在 DB-GPT 中使用 GenStudio API
DB-GPT 是一个开源的 AI 原生数据应用开发框架。通过多种技术能力,构建大模型领域的基础设施。
本文介绍如何在已部署的 DB-GPT 中接入 GenStudio 的模型服务,以及如何通过 DB-GPT Python SDK 使用 GenStudio 的模型。
信息
如果您尚未部署 DB-GPT,请参见在智算云平台开发机上部署 DB-GPT。
获取 GenStudio API Key
您可以复制已有 API Key 或创建新的 Key。
预置模型 API 服务有 API 频率限制。企业级用户如使用预置模型,可联系无问芯穹调整限额。
在已部署的 DB-GPT 中配置 GenStudio 模型
如果您已经完成 DB-GPT 部署,可按以下方式将 GenStudio 模型接入 DB-GPT。
配置环境变量。
language-bashexport INFINIAI_API_KEY="your-genstudio-api-key"信息
请将
your-genstudio-api-key替换为您获取的 GenStudio API Key。编辑配置文件
configs/dbgpt-proxy-infiniai.toml,在[models]下添加所需模型。
添加对话模型:
language-toml[[models.llms]] name = "qwen3-235b-a22b-instruct-2507" provider = "proxy/infiniai" api_key = "${env:INFINIAI_API_KEY}"添加 Embedding 模型:
language-toml[[models.embeddings]] name = "jina-embeddings-v2-base-zh" provider = "proxy/infiniai" api_key = "${env:INFINIAI_API_KEY}"添加 Rerank 模型:
language-toml[[models.reranks]] name = "bge-reranker-v2-m3" provider = "proxy/infiniai" api_key = "${env:INFINIAI_API_KEY}"
更多语言模型、Embedding 模型和 Rerank 模型详见:
通过 DB-GPT Python SDK 使用 GenStudio 的模型
除去在 DB-GPT 服务中接入 GenStudio 模型,您还可以直接通过 DB-GPT Python SDK 使用 GenStudio 的模型。
安装依赖。
language-bashpip install dbgpt openai requests numpy配置环境变量。
language-bashexport INFINIAI_API_KEY="your-genstudio-api-key"信息
请将
your-genstudio-api-key替换为您获取的 GenStudio API Key。
使用 GenStudio 的大语言模型
language-python
import asyncio, os
from dbgpt.core import ModelRequest
from dbgpt.model.proxy import InfiniAILLMClient
model = "deepseek-v3"
client = InfiniAILLMClient(
api_key=os.getenv("INFINIAI_API_KEY"),
model_alias=model,
)
res = asyncio.run(
client.generate(
ModelRequest(
model=model,
messages=[
{"role": "system", "content": "你是一个乐于助人的 AI 助手。"},
{"role": "human", "content": "你好,你是谁?"},
]
)
)
)
print(res)使用 GenStudio 的 Embedding 模型
language-python
import os
from dbgpt.rag.embedding import OpenAPIEmbeddings
openai_embeddings = OpenAPIEmbeddings(
api_url="https://cloud.infini-ai.com/maas/v1/embeddings",
api_key=os.getenv("INFINIAI_API_KEY"),
model_name="bge-m3",
)
texts = ["Hello, world!", "How are you?"]
res = openai_embeddings.embed_documents(texts)
print(res)使用 GenStudio 的 rerank 模型
language-python
import os
from dbgpt.rag.embedding import InfiniAIRerankEmbeddings
embedding = InfiniAIRerankEmbeddings(
api_key=os.getenv("INFINIAI_API_KEY"),
model_name="bge-reranker-v2-m3",
)
res = embedding.predict("Apple", candidates=["苹果", "香蕉", "水果", "蔬菜"])
print(res)