破解任务调度复杂性:用DolphinScheduler构建企业级自动化工作流
在当今数据驱动的业务环境中,企业面临着日益复杂的任务调度挑战:成百上千的任务依赖关系难以维护、分布式环境下的任务可靠性无法保证、跨团队协作效率低下、故障排查困难重重。分布式任务调度系统正是解决这些痛点的关键技术,而Apache DolphinScheduler作为一款开源的分布式可视化DAG工作流任务调度系统,通过其直观的界面和强大的调度能力,帮助企业轻松构建可靠、高效的自动化工作流。本文将深入探讨如何利用DolphinScheduler解决实际业务难题,从快速部署到复杂场景应用,全面展示这款工具的核心价值与实战技巧。
揭示分布式任务调度的核心价值
突破传统调度工具的局限性
传统的任务调度工具往往局限于单机环境,难以应对现代企业的分布式架构需求。当任务数量达到数百甚至数千时,单机调度器会成为性能瓶颈,且缺乏高可用性保障,一旦单点故障,整个调度系统将陷入瘫痪。此外,传统工具通常缺乏直观的可视化界面,任务依赖关系需要通过复杂的脚本或配置文件维护,这不仅增加了学习成本,也提高了出错的风险。
解析DolphinScheduler的核心优势
DolphinScheduler通过去中心化的架构设计,从根本上解决了传统调度工具的痛点。其核心优势体现在以下几个方面:首先,采用Master-Worker架构,Master节点负责任务调度和状态管理,Worker节点负责实际任务执行,支持横向扩展,可轻松应对大规模任务调度需求。其次,直观的可视化DAG设计界面,允许用户通过拖拽方式创建和编辑工作流,极大降低了复杂流程的设计难度。再者,完善的容错机制和状态跟踪,确保任务在分布式环境下的可靠执行,自动处理节点故障和任务失败情况。
适用场景与业务价值
DolphinScheduler广泛适用于各类需要复杂任务调度的场景,包括但不限于:数据ETL流程、数据分析与挖掘、报表生成、定时任务执行、微服务编排等。在实际业务中,它能够显著提升工作效率,减少人工干预,降低出错率,确保关键业务流程的准时、准确执行。例如,电商企业可以利用它构建完整的数据处理流水线,从日志收集、数据清洗、特征提取到模型训练,实现全流程自动化;金融机构则可以通过它调度风险监控任务,确保实时数据分析和异常预警。
快速部署DolphinScheduler环境
准备必要的系统环境
在开始部署DolphinScheduler之前,需要确保系统满足以下基本要求:JDK 1.8或11版本已安装并正确配置环境变量,操作系统推荐使用Linux(如CentOS、Ubuntu等),内存至少4GB,硬盘空间不小于20GB。此外,由于DolphinScheduler支持多种数据库作为元数据存储,如MySQL、PostgreSQL等,用户可以根据实际需求提前准备好数据库环境。
执行快速启动流程
DolphinScheduler提供了多种部署模式,其中Standalone模式最适合快速上手和测试。以下是详细的部署步骤:
- 首先,创建专用的部署用户并配置sudo免密权限,以确保服务的安全运行:
useradd dolphinscheduler
echo "dolphinscheduler" | passwd --stdin dolphinscheduler
sed -i '$adolphinscheduler ALL=(ALL) NOPASSWD: NOPASSWD: ALL' /etc/sudoers
sed -i 's/Defaults requiretty/#Defaults requiretty/g' /etc/sudoers
- 下载DolphinScheduler二进制包,解压后进入安装目录:
tar -xvzf apache-dolphinscheduler-*-bin.tar.gz
cd apache-dolphinscheduler-*-bin
- 启动Standalone服务器:
bash ./bin/dolphinscheduler-daemon.sh start standalone-server
启动脚本位于项目的script/dolphinscheduler-daemon.sh路径下,该脚本负责初始化系统环境、配置文件和服务进程。
验证部署是否成功
服务启动后,可以通过以下方式验证部署是否成功:
- 检查服务进程状态,确保Standalone服务器正常运行:
ps -ef | grep dolphinscheduler
- 打开浏览器,访问DolphinScheduler的Web界面,默认地址为
http://localhost:12345/dolphinscheduler/ui。 - 使用默认账号密码登录系统:用户名
admin,密码dolphinscheduler123。成功登录后,将看到系统的主页仪表盘,显示任务和工作流的状态统计信息。
深入理解DolphinScheduler架构
剖析核心组件功能
DolphinScheduler的架构设计充分体现了分布式系统的特点,主要包含以下核心组件:
- MasterServer:作为调度系统的核心,负责工作流的解析、任务的调度和状态监控。多个Master节点通过ZooKeeper实现分布式锁和领导者选举,确保系统的高可用性。
- WorkerServer:负责实际执行分配的任务,接收来自Master的任务指令,执行完成后将结果反馈给Master。Worker节点可以根据任务负载动态扩展。
- API服务:提供RESTful接口,支持与外部系统集成,同时也是Web UI与后端服务通信的桥梁。
- ZooKeeper集群:用于服务注册、心跳检测、分布式锁和一致性协调,是实现Master高可用的关键组件。
- 数据库:存储工作流定义、任务实例、系统配置等元数据信息,支持MySQL、PostgreSQL等多种数据库。
图:DolphinScheduler系统架构图,展示了MasterServer、WorkerServer、ZooKeeper集群和数据库之间的交互关系,体现了分布式任务调度的核心设计。
解读分布式调度原理
DolphinScheduler的分布式调度机制基于以下关键技术:
- 任务分发:MasterServer根据任务的依赖关系和Worker节点的负载情况,将任务均匀分配到不同的Worker节点执行,实现负载均衡。
- 状态跟踪:每个任务的执行状态会实时更新到数据库,MasterServer通过定期轮询或事件通知的方式监控任务状态,确保工作流按预期执行。
- 故障处理:当Worker节点出现故障时,MasterServer会检测到心跳丢失,将该节点上的任务重新分配到其他健康节点执行;如果Master节点故障,ZooKeeper会自动选举新的Master节点,保证调度服务不中断。
- 任务依赖:基于有向无环图(DAG)的任务依赖管理,确保任务按照预设的顺序执行,支持复杂的依赖关系定义。
理解工作流执行流程
一个典型的DolphinScheduler工作流执行流程如下:
- 用户通过Web UI创建工作流定义,定义任务节点和它们之间的依赖关系。
- 工作流定义被保存到数据库中,等待调度执行。
- MasterServer的调度器组件定期扫描待执行的工作流实例,根据调度规则(如定时、依赖触发等)启动工作流。
- MasterServer解析工作流的DAG结构,按照依赖关系依次将可执行的任务分发给WorkerServer。
- WorkerServer接收到任务后,启动相应的任务执行器,执行任务逻辑。
- 任务执行完成后,WorkerServer将执行结果反馈给MasterServer,MasterServer更新任务状态,并继续调度后续依赖任务。
- 当工作流中的所有任务都执行完成后,MasterServer标记工作流实例为结束状态,并触发相应的通知(如邮件、短信等)。
实战:构建企业级工作流
设计电商数据处理场景
假设我们需要构建一个电商平台的每日数据处理工作流,该工作流需完成以下任务:
- 从多个数据源(如订单数据库、用户行为日志、商品信息表)抽取数据。
- 对抽取的数据进行清洗和转换,统一数据格式和标准。
- 将处理后的数据加载到数据仓库中,供后续分析使用。
- 生成每日销售报表,并发送给相关业务部门。
- 监控整个数据处理流程,出现异常时及时报警。
规划工作流架构
根据上述业务场景,我们可以设计如下工作流架构:
- 数据抽取层:包含多个SQL任务和Shell任务,分别从不同的数据源抽取数据。
- 数据处理层:包含Python任务和Spark任务,对抽取的数据进行清洗、转换和聚合。
- 数据加载层:包含SQL任务和存储过程任务,将处理后的数据加载到数据仓库。
- 报表生成与通知层:包含Shell任务生成报表,以及邮件任务发送报表和监控信息。
工作流的DAG结构如下,展示了各个任务之间的依赖关系:
图:电商数据处理工作流DAG图,展示了从数据抽取、处理、加载到报表生成的完整流程及任务间依赖关系。
分步实现工作流
步骤1:创建项目
登录DolphinScheduler系统后,首先创建一个新的项目,用于管理电商数据处理相关的工作流。在左侧导航栏中点击"项目管理",然后点击"创建项目"按钮,填写项目名称(如"EcommerceDataProcessing")和描述信息,点击"提交"完成创建。
步骤2:设计工作流定义
进入项目后,点击"工作流定义",然后点击"创建工作流"按钮,进入工作流设计界面。从左侧的任务组件面板中拖拽所需的任务类型到画布上,如"SQL"、"Shell"、"Python"、"Spark"等。
图:DolphinScheduler工作流设计界面,展示了任务组件面板、画布和任务配置弹窗,用户可通过拖拽方式创建工作流。
步骤3:配置任务属性
双击每个任务节点,配置任务的具体属性。例如,对于SQL任务,需要选择数据源、输入SQL语句;对于Shell任务,需要编写Shell脚本;对于Python任务,需要指定Python脚本路径和参数等。同时,设置任务的重试次数、超时时间、资源限制等高级属性。
步骤4:定义任务依赖关系
在画布上,通过拖拽任务节点之间的箭头来定义任务的依赖关系。例如,数据抽取任务完成后才能执行数据处理任务,数据处理任务完成后才能执行数据加载任务,以此类推。确保工作流的执行顺序符合业务逻辑。
步骤5:保存并调度工作流
完成工作流设计后,点击"保存"按钮,输入工作流名称(如"DailyDataProcessing")和描述信息。然后,点击"调度"按钮,设置工作流的执行周期(如每日凌晨2点执行),并启动调度。
验证工作流执行效果
工作流启动后,可以在"工作流实例"页面查看执行状态。DolphinScheduler提供了直观的监控仪表盘,展示任务的执行进度、成功率等关键指标。
图:DolphinScheduler工作流监控仪表盘,展示了任务和工作流的状态统计信息,帮助用户实时掌握系统运行状况。
此外,还可以通过以下方式验证工作流执行效果:
- 查看任务实例日志,确认每个任务的执行情况和输出结果。
- 检查数据仓库中的数据是否正确加载。
- 确认相关人员是否收到了报表邮件。
- 监控系统是否在出现异常时触发了报警通知。
系统定制与性能优化
配置资源中心
DolphinScheduler的资源中心用于管理工作流执行过程中所需的资源文件,如脚本、JAR包、配置文件等。默认情况下,Standalone模式使用本地文件系统作为资源中心,用户可以根据实际需求修改配置,将资源中心切换到HDFS、S3等分布式存储系统。配置文件位于conf/common.properties,关键配置项如下:
# 资源中心类型,可选值:HDFS,S3,NONE,LOCAL
resource.storage.type=LOCAL
# 本地模式资源文件存储路径
resource.storage.local.base.path=/tmp/dolphinscheduler
# HDFS资源中心配置(当resource.storage.type=HDFS时生效)
# resource.storage.hdfs.fs.defaultFS=hdfs://localhost:9000
# resource.storage.hdfs.resource.store.path=/dolphinscheduler/resources
优化数据库性能
数据库是DolphinScheduler的核心组件之一,其性能直接影响系统的整体表现。以下是一些数据库优化建议:
- 选择合适的数据库:对于生产环境,建议使用MySQL或PostgreSQL等关系型数据库,避免使用H2等内存数据库。
- 合理配置连接池:在
conf/application.properties中调整数据库连接池参数,如最大连接数、连接超时时间等,确保数据库连接的高效利用。 - 定期维护数据库:包括索引优化、表空间清理、SQL语句优化等,提高查询性能。
- 启用数据库读写分离:对于大规模部署,可以考虑使用主从复制实现读写分离,减轻主库压力。
调整JVM参数
DolphinScheduler的MasterServer和WorkerServer都是Java应用,合理配置JVM参数可以提高系统的稳定性和性能。JVM参数配置文件位于bin/env/dolphinscheduler-env.sh,关键配置项如下:
# MasterServer JVM参数
export DOLPHINSCHEDULER_MASTER_JAVA_OPTS="-Xms1g -Xmx2g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=../logs/dump/master"
# WorkerServer JVM参数
export DOLPHINSCHEDULER_WORKER_JAVA_OPTS="-Xms2g -Xmx4g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=../logs/dump/worker"
根据服务器的内存大小和任务负载情况,可以适当调整-Xms(初始堆大小)和-Xmx(最大堆大小)参数。一般建议将-Xmx设置为服务器物理内存的50%左右,避免内存溢出或过度使用系统资源。
生产环境部署策略
对比不同部署模式
DolphinScheduler提供了多种部署模式,适用于不同的应用场景:
- Standalone模式:所有服务组件(Master、Worker、API等)运行在单个进程中,适用于开发、测试和小规模生产环境。优点是部署简单,缺点是不具备高可用性,无法横向扩展。
- Cluster模式:Master和Worker节点独立部署,可分别横向扩展,适用于中大规模生产环境。通过ZooKeeper实现Master的高可用和Worker的负载均衡,具备较强的容错能力和扩展性。
- Docker模式:将DolphinScheduler的各个组件打包成Docker容器,通过Docker Compose或Kubernetes进行编排和管理。适用于容器化部署环境,便于环境一致性管理和快速扩缩容。
- Kubernetes模式:基于Kubernetes进行部署,充分利用Kubernetes的自动扩缩容、自愈能力和资源调度功能,适用于大规模、高可用的生产环境。
设计高可用集群
在生产环境中,为确保DolphinScheduler的高可用性,建议采用Cluster模式部署,并遵循以下最佳实践:
- Master节点集群:部署至少2个Master节点,通过ZooKeeper实现领导者选举和故障转移。当主Master节点故障时,从Master节点会自动接管服务,确保调度服务不中断。
- Worker节点集群:根据任务负载情况部署多个Worker节点,实现任务的分布式执行和负载均衡。Worker节点数量可以根据任务数量和资源需求动态调整。
- 数据库高可用:采用数据库主从复制或集群方案(如MySQL MGR、PostgreSQL流复制),确保数据库服务的高可用和数据可靠性。
- ZooKeeper集群:部署至少3个ZooKeeper节点,形成集群,避免单点故障。ZooKeeper用于服务注册、心跳检测和分布式锁,是实现Master高可用的关键组件。
- 负载均衡:在API服务前端部署负载均衡器(如Nginx、HAProxy),将客户端请求分发到多个API服务实例,提高系统的并发处理能力和可用性。
制定监控与运维策略
为确保DolphinScheduler在生产环境中的稳定运行,需要建立完善的监控与运维策略:
- 系统监控:利用Prometheus、Grafana等监控工具,收集Master、Worker、数据库、ZooKeeper等组件的性能指标(如CPU使用率、内存占用、磁盘IO、网络流量等),设置阈值告警,及时发现和解决性能问题。
- 日志管理:集中收集和分析系统日志,包括Master日志、Worker日志、API日志、审计日志等。可以使用ELK(Elasticsearch、Logstash、Kibana)栈或其他日志管理工具,实现日志的集中存储、检索和可视化分析,便于故障排查和问题定位。
- 备份策略:定期备份数据库和配置文件,防止数据丢失。备份频率根据业务需求确定,建议至少每日备份一次,并定期测试备份数据的恢复能力。
- 版本升级:制定合理的版本升级计划,在非业务高峰期进行升级操作,提前做好兼容性测试和回滚预案,确保升级过程平滑稳定。
- 安全管理:加强系统安全防护,包括访问控制(如配置LDAP认证、RBAC权限管理)、数据加密(如数据库密码加密、传输数据加密)、漏洞扫描和安全审计等,保护系统和数据的安全。
故障排除与问题解决
诊断服务启动故障
当DolphinScheduler服务启动失败时,可以按照以下步骤进行诊断:
- 检查日志文件:服务日志位于
standalone-server/logs/dolphinscheduler-server.log,审计日志位于standalone-server/logs/audit.log。查看日志中的错误信息,确定故障原因,如端口占用、数据库连接失败、配置文件错误等。 - 验证系统依赖:确保JDK版本符合要求,数据库服务正常运行,ZooKeeper集群(如使用)状态健康。
- 检查端口占用情况:使用
netstat或ss命令检查DolphinScheduler所需端口(如12345、25333等)是否被其他进程占用。 - 验证文件权限:确保部署用户对DolphinScheduler的安装目录和数据目录具有读写权限。
示例:如果日志中出现"数据库连接失败"的错误,可能是数据库服务未启动、数据库连接参数配置错误或数据库用户权限不足。此时,应检查数据库服务状态,验证conf/datasource.properties中的数据库连接URL、用户名和密码是否正确,并确保数据库用户具有足够的权限。
解决任务执行失败
任务执行失败是常见的问题,可通过以下步骤排查和解决:
- 查看任务实例日志:在DolphinScheduler的Web界面中,找到对应的任务实例,点击右键选择"查看日志",查看任务执行的详细输出,定位错误原因。
- 检查任务配置:确认任务的参数配置是否正确,如SQL语句语法、脚本路径、数据源连接信息、资源文件是否存在等。
- 验证执行环境:检查Worker节点的执行环境是否满足任务要求,如所需的软件(如Python、Spark)是否安装,环境变量是否配置正确,文件系统权限是否足够等。
- 检查资源限制:如果任务因资源不足而失败(如内存溢出),可以调整任务的资源配置,如增加JVM内存、调整CPU核数等。
示例:如果Shell任务执行失败,日志中显示"command not found",可能是任务中使用的命令在Worker节点上未安装或未添加到环境变量中。此时,应在Worker节点上安装相应的命令工具,或在任务脚本中使用命令的绝对路径。
处理分布式环境问题
在分布式部署环境中,可能会遇到一些特殊问题,如任务分配不均、节点通信异常等。以下是一些常见问题的解决方法:
- 任务分配不均:如果某些Worker节点负载过高,而其他节点负载较低,可能是任务调度策略或Worker节点资源配置不合理。可以调整Master的任务调度算法,或均衡配置各Worker节点的资源(如CPU、内存)。
- 节点通信异常:如果Master和Worker之间或Worker节点之间通信异常,应检查网络连接是否正常,防火墙规则是否阻止了节点间的通信端口,ZooKeeper集群是否正常运行(用于服务注册和心跳检测)。
- 数据一致性问题:在分布式环境中,可能会出现任务状态不一致的情况。此时,可以检查数据库的一致性,或通过DolphinScheduler的"修复工作流"功能尝试恢复任务状态。
与同类产品对比分析
对比Apache Airflow
Apache Airflow是另一个流行的开源工作流调度工具,与DolphinScheduler相比,它们各有特点:
- 易用性:DolphinScheduler提供更直观的可视化DAG设计界面,用户无需编写代码即可创建工作流;而Airflow主要通过Python代码定义工作流,对技术人员要求较高。
- 架构设计:DolphinScheduler采用去中心化的Master-Worker架构,天然支持高可用和横向扩展;Airflow的Scheduler组件是单点的,虽然可以通过一些方案实现高可用,但复杂度较高。
- 任务类型支持:两者都支持丰富的任务类型,但DolphinScheduler对大数据生态工具(如Spark、Flink、Hive)的集成更加紧密,配置也更简单。
- 性能:在大规模任务调度场景下,DolphinScheduler的性能表现通常优于Airflow,因为其架构设计更适合分布式环境下的高并发任务处理。
对比Azkaban
Azkaban是LinkedIn开源的工作流调度工具,与DolphinScheduler相比:
- 可视化界面:DolphinScheduler的Web界面功能更丰富,支持工作流的在线编辑、版本控制、甘特图展示等;Azkaban的界面相对简单,主要以文件上传的方式管理工作流。
- 依赖管理:DolphinScheduler支持复杂的DAG依赖关系定义,而Azkaban主要通过.properties文件定义任务依赖,灵活性相对较低。
- 扩展性:DolphinScheduler的插件化架构使其更容易扩展新的任务类型和存储系统;Azkaban的扩展性相对较差,定制开发成本较高。
- 社区活跃度:DolphinScheduler作为Apache顶级项目,社区活跃度高,功能更新迭代快;Azkaban的社区相对较小,发展速度较慢。
选择建议
- 如果团队以非技术人员为主,需要直观的可视化操作界面,优先选择DolphinScheduler。
- 如果需要处理大规模、高并发的任务调度,DolphinScheduler的分布式架构更具优势。
- 如果项目已经大量使用Python,并且团队熟悉代码定义工作流的方式,Airflow可能是更好的选择。
- 如果对系统的稳定性和可靠性要求极高,且需要与大数据生态工具深度集成,DolphinScheduler是更合适的选择。
拓展应用与未来展望
集成大数据生态系统
DolphinScheduler可以与各种大数据工具和平台无缝集成,拓展其应用场景:
- 数据处理引擎:支持Spark、Flink、MapReduce等大数据处理引擎,可直接调度这些引擎的作业。
- 数据仓库:与Hive、HBase、ClickHouse、Doris等数据仓库工具集成,实现数据的抽取、转换和加载(ETL)。
- 消息队列:与Kafka、RabbitMQ等消息队列集成,实现基于事件的任务触发。
- 云服务:支持AWS、Azure、阿里云等云平台的服务,如AWS S3、Azure Blob Storage、阿里云OSS等存储服务,以及云数据库服务。
实现智能化调度
未来,DolphinScheduler可以朝着智能化调度的方向发展,例如:
- 基于机器学习的任务调度优化:通过分析历史任务执行数据,预测任务的执行时间和资源需求,动态调整任务的调度策略和资源分配,提高系统的整体效率。
- 自适应容错机制:根据任务的重要性和执行情况,自动调整重试策略和故障转移机制,提高任务的成功率。
- 智能监控与预警:利用机器学习算法分析系统运行指标和任务执行数据,提前发现潜在的问题和风险,并自动触发预警和修复措施。
社区贡献与学习资源
DolphinScheduler拥有活跃的开源社区,用户可以通过以下方式参与社区贡献和学习:
- 贡献代码:通过GitHub提交Issue、Pull Request,参与功能开发和Bug修复。
- 文档完善:参与官方文档的翻译、校对和补充,帮助其他用户更好地使用DolphinScheduler。
- 社区交流:加入官方邮件列表(users@dolphinscheduler.apache.org)或社区微信群、QQ群,与其他用户和开发者交流经验和问题。
- 学习资源:官方文档提供了详细的安装、配置和使用指南;社区也有大量的博客、视频教程和案例分享,帮助用户快速掌握DolphinScheduler的使用技巧。
相关工具推荐
监控工具
- Prometheus + Grafana:Prometheus用于收集系统和应用的性能指标,Grafana用于指标可视化和告警,是监控DolphinScheduler集群的理想组合。
- ELK Stack:Elasticsearch、Logstash、Kibana的组合,用于集中式日志收集、存储、分析和可视化,帮助排查系统故障和性能问题。
部署工具
- Ansible:自动化部署工具,可以编写Playbook实现DolphinScheduler的自动化部署和配置管理,提高部署效率和一致性。
- Docker + Kubernetes:容器化部署方案,Docker用于打包应用,Kubernetes用于编排和管理容器集群,适用于大规模、高可用的生产环境部署。
开发工具
- IntelliJ IDEA:Java开发IDE,支持DolphinScheduler源码的开发、调试和测试。
- Visual Studio Code:轻量级代码编辑器,通过安装相关插件,可以方便地编辑DolphinScheduler的配置文件和脚本。
学习资源导航
官方文档
- 用户手册:详细介绍DolphinScheduler的安装、配置、使用方法和最佳实践,是入门的首选资料。
- 开发指南:面向开发者,介绍DolphinScheduler的架构设计、代码结构、插件开发等内容。
- API文档:DolphinScheduler的RESTful API文档,方便与外部系统集成。
在线课程
- Apache DolphinScheduler实战课程:一些在线教育平台提供的实战课程,通过视频教程和动手实验,帮助用户快速掌握DolphinScheduler的使用。
- 大数据调度系统专题课程:涵盖DolphinScheduler、Airflow等主流调度工具的对比和实践,适合有一定基础的用户深入学习。
社区资源
- GitHub仓库:DolphinScheduler的源码托管仓库,包含最新的代码、Issue和Pull Request。
- 官方博客:发布DolphinScheduler的新版本特性、使用技巧、案例分析等文章。
- 技术会议:Apache DolphinScheduler社区会定期举办线上或线下的技术分享会和Meetup,用户可以参与交流和学习。
通过本文的介绍,相信读者已经对DolphinScheduler有了全面的了解,从基本概念到实际应用,从架构原理到性能优化,都有了清晰的认识。DolphinScheduler作为一款优秀的分布式任务调度系统,正在帮助越来越多的企业解决复杂的任务调度难题,提升业务自动化水平。随着社区的不断发展和功能的持续完善,DolphinScheduler必将在数据驱动的时代发挥越来越重要的作用。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust067- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
Hy3-previewHy3 preview 是由腾讯混元团队研发的2950亿参数混合专家(Mixture-of-Experts, MoE)模型,包含210亿激活参数和38亿MTP层参数。Hy3 preview是在我们重构的基础设施上训练的首款模型,也是目前发布的性能最强的模型。该模型在复杂推理、指令遵循、上下文学习、代码生成及智能体任务等方面均实现了显著提升。Python00