新特性

  1. 支持以数据库作为模型注册中心实现集群部署高可用

    1.变更表结构:

  1. -- For deploy model cluster of DB-GPT(StorageModelRegistry)
  2. CREATE TABLE IF NOT EXISTS `dbgpt_cluster_registry_instance` (
  3. `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Auto increment id',
  4. `model_name` varchar(128) NOT NULL COMMENT 'Model name',
  5. `host` varchar(128) NOT NULL COMMENT 'Host of the model',
  6. `port` int(11) NOT NULL COMMENT 'Port of the model',
  7. `weight` float DEFAULT 1.0 COMMENT 'Weight of the model',
  8. `check_healthy` tinyint(1) DEFAULT 1 COMMENT 'Whether to check the health of the model',
  9. `healthy` tinyint(1) DEFAULT 0 COMMENT 'Whether the model is healthy',
  10. `enabled` tinyint(1) DEFAULT 1 COMMENT 'Whether the model is enabled',
  11. `prompt_template` varchar(128) DEFAULT NULL COMMENT 'Prompt template for the model instance',
  12. `last_heartbeat` datetime DEFAULT NULL COMMENT 'Last heartbeat time of the model instance',
  13. `user_name` varchar(128) DEFAULT NULL COMMENT 'User name',
  14. `sys_code` varchar(128) DEFAULT NULL COMMENT 'System code',
  15. `gmt_created` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Record creation time',
  16. `gmt_modified` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Record update time',
  17. PRIMARY KEY (`id`),
  18. UNIQUE KEY `uk_model_instance` (`model_name`, `host`, `port`, `sys_code`)
  19. ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='Cluster model instance table, for registering and managing model instances';

2.我们需要在两台机器(server1和server2)上启动模型控制器,它们将通过连接到同一数据库来共享元数据。在 server1 上启动模型控制器:

  1. dbgpt start controller \
  2. --port 8000 \
  3. --registry_type database \
  4. --registry_db_type mysql \
  5. --registry_db_name dbgpt \
  6. --registry_db_host 127.0.0.1 \
  7. --registry_db_port 3306 \
  8. --registry_db_user root \
  9. --registry_db_password aa123456

server2 上启动模型控制器:

  1. dbgpt start controller \
  2. --port 8000 \
  3. --registry_type database \
  4. --registry_db_type mysql \
  5. --registry_db_name dbgpt \
  6. --registry_db_host 127.0.0.1 \
  7. --registry_db_port 3306 \
  8. --registry_db_user root \
  9. --registry_db_password aa123456

3.启动 Model Worker

  1. dbgpt start worker --model_name glm-4-9b-chat \
  2. --model_path /app/models/glm-4-9b-chat \
  3. --port 8001 \
  4. --controller_addr "http://server1:8000,http://server2:8000"

4.启动 Embedding Model Worker

  1. dbgpt start worker --model_name text2vec \
  2. --model_path /app/models/text2vec-large-chinese \
  3. --worker_type text2vec \
  4. --port 8003 \
  5. --controller_addr "http://server1:8000,http://server2:8000"

5.启动 Web Server

  1. LLM_MODEL=glm-4-9b-chat EMBEDDING_MODEL=text2vec \
  2. dbgpt start webserver \
  3. --light \
  4. --remote_embedding \
  5. --controller_addr "http://server1:8000,http://server2:8000"

更多细节可以查看文档:https://docs.dbgpt.site/docs/latest/installation/model_service/cluster_ha/

  1. 新增**Agent**模块开发文档

文档地址: https://docs.dbgpt.site/docs/latest/agents/introduction/

v0.5.9 版本更新 - 图1

  1. 支持谷歌新开源 gemma-2 模型

需要升级transformers库到最新版

  1. pip install -U "transformers>=4.42.1"

下载对应的模型权重到 DB-GPT 项目的 models 目录下(或者创建软连接到models目录下)

修改 .env文件

  1. LLM_MODEL=gemma-2-9b-it
  2. # LLM_MODEL=gemma-2-27b-it
  3. ## 下面配置开启量化
  4. # QUANTIZE_8bit=False
  5. # QUANTIZE_4bit=False
  1. 支持 DeepSeek-Coder-V2 模型

下载对应的模型权重到 DB-GPT 项目的 models 目录下(或者创建软连接到models目录下)

修改 .env文件

  1. LLM_MODEL=deepseek-coder-v2-lite-instruct
  2. # LLM_MODEL=deepseek-coder-v2-instruct
  1. 支持通义Embedding

.env里面进行设置

  1. EMBEDDING_MODEL=proxy_tongyi
  2. proxy_tongyi_proxy_backend=text-embedding-v1
  3. proxy_tongyi_proxy_api_key={your-api-key}
  1. 新增图片下载功能

v0.5.9 版本更新 - 图2

  1. 折线图显示优化

优化前:

v0.5.9 版本更新 - 图3

优化后:

v0.5.9 版本更新 - 图4

🐞 Bug 修复

  1. 修复chroma db 打分问题

    1. 修复AWEL branch分支问题

    2. 修复scheme linking error问题

✨**官方文档地址**

:::color2 英文

:::

Overview | DB-GPT

:::color2 中文

:::

概览

✨**致谢**

感谢所有贡献者使这次发布成为可能!

@Aries-ckt, @Armandwt, @aagnone3, @chenluli, @fangyinc and @zhenchaozhu

✨**附录**