以下提供两种常见方式,将 LlamaIndex 与 Comet 集成,用于记录提示词、输出、性能与工件。 一、使用 comet-llm 记录 LLM 提示与输出 - 适用场景:快速记录每次调用的 prompt、输出与相关元数据,不侵入 LlamaIndex 内部。 - 步骤: 1) 安装依赖 pip install llama-index comet-llm comet-ml openai tiktoken 2) 设置环境变量 - COMET_API_KEY=你的API密钥 - 可选:COMET_WORKSPACE=你的工作区;COMET_PROJECT_NAME=项目名 3) 在代码中接入 comet-llm 并记录调用 示例(以 OpenAI 为 LLM,LlamaIndex 最新 Settings API 为例): ``` import os from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings from llama_index.llms.openai import OpenAI from llama_index.embeddings.openai import OpenAIEmbedding import comet_llm from comet_ml import Experiment # 初始化 Comet 实验(用于记录参数、指标、工件) experiment = Experiment( project_name=os.getenv("COMET_PROJECT_NAME", "llamaindex-comet"), workspace=os.getenv("COMET_WORKSPACE"), ) # 配置 LLM 与 Embedding Settings.llm = OpenAI(model="gpt-4o-mini", temperature=0) Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-small") # 记录全局参数 experiment.log_parameters({ "llm_model": "gpt-4o-mini", "embed_model": "text-embedding-3-small", "temperature": 0, }) # 构建索引 docs = SimpleDirectoryReader("./data").load_data() index = VectorStoreIndex.from_documents(docs) query_engine = index.as_query_engine() question = "给我一个文档的简要摘要,并列出三条要点。" # 使用 comet-llm 记录 prompt(可附带输入与元数据) comet_llm.log_prompt( prompt=question, inputs={"task": "summarize_with_bullets"}, metadata={"llm_model": "gpt-4o-mini"}, tags=["llamaindex", "query"], ) # 执行查询并记录输出 response = query_engine.query(question) comet_llm.log_output( output=str(response), metadata={"llm_model": "gpt-4o-mini"}, tags=["llamaindex", "response"], ) # 记录简单指标(如响应长度) experiment.log_metric("response_length_chars", len(str(response))) # 持久化索引并作为工件上传 storage_dir = "./storage" index.storage_context.persist(persist_dir=storage_dir) experiment.log_asset_folder(storage_dir, recursive=True) ``` - 说明: - comet_llm.log_prompt/log_output 可在任意调用点使用;若你的调用链较复杂,可在每次 LLM 调用前后进行记录。 - 若采用非 OpenAI LLM,同样可以记录 prompt 与输出;模型名与参数通过 metadata 统一传入。 二、结合 LlamaIndex 回调统计与 comet-ml 指标记录 - 适用场景:需要记录令牌用量、耗时、检索行为等过程指标。 - 步骤: 1) 安装依赖同上。 2) 使用 LlamaIndex 的回调组件统计指标,再将结果写入 Comet: ``` import time from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings from llama_index.llms.openai import OpenAI from llama_index.embeddings.openai import OpenAIEmbedding from llama_index.core.callbacks import CallbackManager, TokenCountingHandler, LlamaDebugHandler from comet_ml import Experiment experiment = Experiment(project_name="llamaindex-comet") Settings.llm = OpenAI(model="gpt-4o-mini", temperature=0) Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-small") # 令牌统计与调试回调 token_handler = TokenCountingHandler() debug_handler = LlamaDebugHandler() Settings.callback_manager = CallbackManager(handlers=[token_handler, debug_handler]) docs = SimpleDirectoryReader("./data").load_data() index = VectorStoreIndex.from_documents(docs) qe = index.as_query_engine() question = "总结数据集的关键信息,并提供参考段落。" start = time.time() resp = qe.query(question) latency = time.time() - start # 记录基础指标 experiment.log_metric("latency_seconds", latency) # 记录令牌统计(不同版本的 TokenCountingHandler 字段名可能略有差异,常见示例如下) # 如遇属性名不一致,可选择性记录可用字段 for name in dir(token_handler): if name.startswith("total") and isinstance(getattr(token_handler, name), (int, float)): experiment.log_metric(name, getattr(token_handler, name)) experiment.log_other("question", question) experiment.log_text(str(resp), metadata={"label": "response"}) ``` - 拓展建议: - 批量评估:将一组查询与参考答案循环执行,使用 experiment.log_metric/experiment.log_table 记录质量指标(如 BLEU、ROUGE、自定义评分)。 - 成本与用量:若有不同模型的价格表,可在回调或查询后自行计算成本,并通过 experiment.log_metric("cost_usd", value) 记录。 - 生产化:将 COMET_API_KEY 写入安全的环境变量或密钥管理服务;为不同环境(dev/staging/prod)设置不同的 COMET_PROJECT_NAME。 - 审计与复现:使用 experiment.log_parameters 统一记录模型版本、温度、top_p、索引构建参数与数据快照,确保可追溯。 常见问题排查 - 未看到任何日志:检查 COMET_API_KEY、workspace/project 是否正确;确认网络连通;本地防火墙或代理是否阻止上传。 - 令牌统计为空或字段不匹配:LlamaIndex 版本差异可能导致属性名不同,建议打印 token_handler.__dict__ 或 dir(token_handler) 找到可用统计字段并逐一记录。 - 模型切换:更换为其他 LLM 或 embedding 提供方时,维持 comet-llm 的 log_prompt/log_output 与 comet-ml 的指标记录逻辑即可,无需变更 Comet 侧配置。

CometAPI
AnnaSep 10, 2025
以下提供两种常见方式,将 LlamaIndex 与 Comet 集成,用于记录提示词、输出、性能与工件。

一、使用 comet-llm 记录 LLM 提示与输出
- 适用场景:快速记录每次调用的 prompt、输出与相关元数据,不侵入 LlamaIndex 内部。
- 步骤:
  1) 安装依赖
     pip install llama-index comet-llm comet-ml openai tiktoken
  2) 设置环境变量
     - COMET_API_KEY=你的API密钥
     - 可选:COMET_WORKSPACE=你的工作区;COMET_PROJECT_NAME=项目名
  3) 在代码中接入 comet-llm 并记录调用
     示例(以 OpenAI 为 LLM,LlamaIndex 最新 Settings API 为例):
     ```
     import os
     from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings
     from llama_index.llms.openai import OpenAI
     from llama_index.embeddings.openai import OpenAIEmbedding
     import comet_llm
     from comet_ml import Experiment

     # 初始化 Comet 实验(用于记录参数、指标、工件)
     experiment = Experiment(
         project_name=os.getenv("COMET_PROJECT_NAME", "llamaindex-comet"),
         workspace=os.getenv("COMET_WORKSPACE"),
     )

     # 配置 LLM 与 Embedding
     Settings.llm = OpenAI(model="gpt-4o-mini", temperature=0)
     Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-small")

     # 记录全局参数
     experiment.log_parameters({
         "llm_model": "gpt-4o-mini",
         "embed_model": "text-embedding-3-small",
         "temperature": 0,
     })

     # 构建索引
     docs = SimpleDirectoryReader("./data").load_data()
     index = VectorStoreIndex.from_documents(docs)
     query_engine = index.as_query_engine()

     question = "给我一个文档的简要摘要,并列出三条要点。"

     # 使用 comet-llm 记录 prompt(可附带输入与元数据)
     comet_llm.log_prompt(
         prompt=question,
         inputs={"task": "summarize_with_bullets"},
         metadata={"llm_model": "gpt-4o-mini"},
         tags=["llamaindex", "query"],
     )

     # 执行查询并记录输出
     response = query_engine.query(question)
     comet_llm.log_output(
         output=str(response),
         metadata={"llm_model": "gpt-4o-mini"},
         tags=["llamaindex", "response"],
     )

     # 记录简单指标(如响应长度)
     experiment.log_metric("response_length_chars", len(str(response)))

     # 持久化索引并作为工件上传
     storage_dir = "./storage"
     index.storage_context.persist(persist_dir=storage_dir)
     experiment.log_asset_folder(storage_dir, recursive=True)
     ```

- 说明:
  - comet_llm.log_prompt/log_output 可在任意调用点使用;若你的调用链较复杂,可在每次 LLM 调用前后进行记录。
  - 若采用非 OpenAI LLM,同样可以记录 prompt 与输出;模型名与参数通过 metadata 统一传入。

二、结合 LlamaIndex 回调统计与 comet-ml 指标记录
- 适用场景:需要记录令牌用量、耗时、检索行为等过程指标。
- 步骤:
  1) 安装依赖同上。
  2) 使用 LlamaIndex 的回调组件统计指标,再将结果写入 Comet:
     ```
     import time
     from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings
     from llama_index.llms.openai import OpenAI
     from llama_index.embeddings.openai import OpenAIEmbedding
     from llama_index.core.callbacks import CallbackManager, TokenCountingHandler, LlamaDebugHandler
     from comet_ml import Experiment

     experiment = Experiment(project_name="llamaindex-comet")

     Settings.llm = OpenAI(model="gpt-4o-mini", temperature=0)
     Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-small")

     # 令牌统计与调试回调
     token_handler = TokenCountingHandler()
     debug_handler = LlamaDebugHandler()
     Settings.callback_manager = CallbackManager(handlers=[token_handler, debug_handler])

     docs = SimpleDirectoryReader("./data").load_data()
     index = VectorStoreIndex.from_documents(docs)
     qe = index.as_query_engine()

     question = "总结数据集的关键信息,并提供参考段落。"
     start = time.time()
     resp = qe.query(question)
     latency = time.time() - start

     # 记录基础指标
     experiment.log_metric("latency_seconds", latency)

     # 记录令牌统计(不同版本的 TokenCountingHandler 字段名可能略有差异,常见示例如下)
     # 如遇属性名不一致,可选择性记录可用字段
     for name in dir(token_handler):
         if name.startswith("total") and isinstance(getattr(token_handler, name), (int, float)):
             experiment.log_metric(name, getattr(token_handler, name))

     experiment.log_other("question", question)
     experiment.log_text(str(resp), metadata={"label": "response"})
     ```

- 拓展建议:
  - 批量评估:将一组查询与参考答案循环执行,使用 experiment.log_metric/experiment.log_table 记录质量指标(如 BLEU、ROUGE、自定义评分)。
  - 成本与用量:若有不同模型的价格表,可在回调或查询后自行计算成本,并通过 experiment.log_metric("cost_usd", value) 记录。
  - 生产化:将 COMET_API_KEY 写入安全的环境变量或密钥管理服务;为不同环境(dev/staging/prod)设置不同的 COMET_PROJECT_NAME。
  - 审计与复现:使用 experiment.log_parameters 统一记录模型版本、温度、top_p、索引构建参数与数据快照,确保可追溯。

常见问题排查
- 未看到任何日志:检查 COMET_API_KEY、workspace/project 是否正确;确认网络连通;本地防火墙或代理是否阻止上传。
- 令牌统计为空或字段不匹配:LlamaIndex 版本差异可能导致属性名不同,建议打印 token_handler.__dict__ 或 dir(token_handler) 找到可用统计字段并逐一记录。
- 模型切换:更换为其他 LLM 或 embedding 提供方时,维持 comet-llm 的 log_prompt/log_output 与 comet-ml 的指标记录逻辑即可,无需变更 Comet 侧配置。

CometAPI 提供一个与 OpenAI 兼容的统一网关,可访问众多模型(GPT 系列、Anthropic/Claude、Google Gemini 等)。LlamaIndex(用于构建检索增强型 LLM 应用的“数据框架”)现已公开原生的 CometAPI LLM 集成——这意味着你可以 **通过 LlamaIndex 使用 CometAPI 调用任意模型。

LlamaIndex(用于构建知识助手的数据框架)现已正式支持将 CometAPI 作为 LLM 后端。本文将说明两者为何适配、如何完成环境配置、分步集成(含代码)、一个具体的 RAG 用例,以及改进可靠性、成本与可观测性的技巧。示例遵循 LlamaIndex 文档CometAPI 集成示例

什么是 LlamaIndex?它的关键特性有哪些?

LlamaIndex(原名 GPT-Index)是一个数据抽象与检索框架,它通过摄取文档、构建索引,并编排检索 + 提示词工作流,将大型语言模型(LLM)连接到你的自有数据,用于构建 RAG 风格应用。其关键特性包括文档接入连接器(PDF、网页、数据库等)、向量/关键词/图索引、灵活的查询引擎,以及可插拔的 LLM 提供商抽象层。LlamaIndex 旨在让你将“自有数据”带到任意 LLM,并为文档切分、嵌入、检索与提示词编排提供基础设施。

主要功能是什么?

  • 数据连接器:从文件、数据库和众多 SaaS 源摄取数据。
  • 索引原语:向量存储索引、树/图索引与检索流水线。
  • 查询引擎:灵活的查询编排(重排序器、响应综合、多步提示词)。
  • LLM 适配器:可插拔的 LLM 后端——OpenAI、Anthropic、Vertex,如今还有 CometAPI 等。
  • 可观测性与回调:用于跟踪与监控 LLM 调用的钩子。

什么是 CometAPI?为何与 LlamaIndex 搭配使用?

什么是 CometAPI?

CometAPI 是一个 API 网关,通过单一、与 OpenAI 兼容的 REST 接口,聚合数百个第三方 AI 模型(LLM、图像/视频生成与嵌入等)。你无需为每个模型厂商分别维护 SDK 与密钥,只需调用 CometAPI 的基础 URL,并在请求体中选择模型名——例如 gptclaudegemini,以及各类专用的嵌入/图像引擎。这种“一个 API 支持 500+ 模型”的方式可加速实验并降低运维开销。

为什么将 CometAPI 与 LlamaIndex 搭配?

LlamaIndex 是一个数据框架,将你的文档变为索引(向量等),并使用 LLM 进行最终答案生成。由于 CometAPI 使用 OpenAI 风格的 API,LlamaIndex 可以:

  • 使用其内置的 CometAPI LLM 集成(推荐),或
  • 使用 OpenAI/“OpenAI 兼容”的 LLM 与嵌入适配器,并将 api_base 指向 CometAPI。

LlamaIndex 已提供专门的 CometAPI LLM 封装与示例——集成刻意设计为直观易用。

集成带来哪些好处?

  1. RAG + 灵活选型——LlamaIndex 负责数据检索与提示词编排;CometAPI 让你无需重构流水线即可选择调用的 LLM。
  2. 成本/时延优化——常规查询试用更便宜或更快的模型,复杂推理再切换到高质量模型。
  3. 厂商可移植性——仅需更改模型名或少量客户端配置即可切换厂商。
  4. 快速实验——在保持索引与检索流水线不变的情况下,轻松做模型 A/B。

先决条件与环境配置是什么?

账户与密钥

注册 CometAPI 并在 CometAPI 控制台获取 API 密钥:https://api.cometapi.com/console/token。(你将用该值进行请求认证。)

Python 与依赖包

  • 推荐 Python 3.9+。
  • Jupyter Notebook 或 Python 环境(交互式测试推荐使用 Google Colab)。
  • 需要安装的包:llama-index(核心)与 llama-index-llms-cometapi(CometAPI 适配器/集成)。
  • 可选:你计划使用的向量存储库(如 faiss-cpupinecone-client 等)。LlamaIndex 有官方/向量存储指南。

环境变量

常见做法:将 CometAPI 密钥设置为环境变量(如 COMETAPI_KEY),或者直接将密钥传给 LlamaIndex 的 CometAPI 构造器。LlamaIndex 文档展示了两种方式——为避免歧义与便于测试,最安全的是在构造函数中显式传入 api_key=

如何逐步集成 LlamaIndex 与 CometAPI?

以下步骤涵盖具体操作:创建账户、安装依赖、设置密钥、将 LlamaIndex 配置为使用 CometAPI。

1) 如何创建 CometAPI 账户并获取 API 密钥?

  1. 访问 CometAPI 官网注册账户。(其首页与注册流程会引导至 API 控制台。)
  2. 在 CometAPI 控制台(文档中提到 https://api.cometapi.com/console/token)创建或复制你的 API 令牌。你将其用于 COMETAPI_API_KEY(见下文)。

2) 如何安装 LlamaIndex 及 CometAPI 集成?

在虚拟环境中运行以下 pip 命令(推荐):

# core LlamaIndex

pip install llama-index

# CometAPI LLM integration for LlamaIndex

pip install llama-index-llms-cometapi

# optional: vectorstore (FAISS example)

pip install faiss-cpu

(If you're in a Jupyter/Colab environment you can prefix with `%pip`.)

注意:

  • LlamaIndex 使用命名空间化的集成包,避免将所有内容打包进核心库。CometAPI 的 LLM 集成由 llama-index-llms-cometapi 提供。

3) 如何设置 CometAPI 密钥(环境变量)?

LlamaIndex 的 CometAPI LLM 类可从构造函数参数或环境变量读取 API 密钥。该集成的代码期望的环境变量名为 COMETAPI_API_KEY(你也可以直接在类构造函数中传入密钥)。如果需要覆盖 API 基础 URL,也支持 COMETAPI_API_BASE

推荐(显式)——将 API 密钥传入构造函数。如需,也可设置环境变量 COMETAPI_KEY

import os
# Option A: set env var (optional)

os.environ = "sk-xxxx-your-key"

# Option B: pass the key explicitly (recommended for clarity)

api_key = os.getenv("COMETAPI_KEY", "sk-xxxx-your-key")

本地设置(Unix/macOS):

export COMETAPI_API_KEY="sk-<your-cometapi-key>"
# optional override:

export COMETAPI_API_BASE="https://www.cometapi.com/console/"

Windows(PowerShell):

$env:COMETAPI_API_KEY = "sk-<your-cometapi-key>"

4) 将 LlamaIndex 配置为使用 CometAPI

下面给出一个最小端到端示例:摄取文档、构建向量索引并发起查询。该示例使用现代 LlamaIndex API(示例 A:ServiceContext + 向量索引);如果你使用其他版本,请按需调整命名。

minimal RAG example using CometAPI as the LLM backend
from llama_index import SimpleDirectoryReader, VectorStoreIndex, ServiceContext
from llama_index.llms.cometapi import CometAPI
from llama_index.core.llms import ChatMessage

# 1) API key and LLM client

api_key = "sk-xxxx-your-key"  # or read from env

llm = CometAPI(
    api_key=api_key,
    model="gpt-4o-mini",      # pick a CometAPI-supported model

    max_tokens=512,
    context_window=4096,
)

# 2) Optional: wrap in ServiceContext (customize prompt settings, embedding model etc)

service_context = ServiceContext.from_defaults(llm=llm)

# 3) Load documents (assumes a ./data directory with files)

documents = SimpleDirectoryReader("data").load_data()

# 4) Build a vector index (FAISS, default vector store)

index = VectorStoreIndex.from_documents(documents, service_context=service_context)

# 5) Query the index

query_engine = index.as_query_engine()
resp = query_engine.query("Summarize the main points in the documents.")
print(resp)
  • 模型名称与可用能力取决于 CometAPI——请查阅 CometAPI 文档,选择最适合你用例的模型。LlamaIndex 的 Comet 适配器支持聊天与补全模式以及流式输出。
  • 若需流式响应,可调用 llm.stream_chat() 或参考文档中的 stream_complete 变体。

注意:取决于你的 LlamaIndex 版本,as_query_engine 是否接受 llm 参数可能有所不同。若你的版本此处不接受 lServiceContext,请参阅下方的 LLM 示例。CometAPI 的 LLM 实现为 llama_index.llms.cometapi 中的 CometAPI

示例 B — 最小化、直接使用 CometAPI LLM(为清晰起见推荐)

import os
from llama_index.llms.cometapi import CometAPI
from llama_index import VectorStoreIndex, SimpleDirectoryReader

# ensure env var set, or pass api_key explicitly

os.environ = "sk-<your-key>"  # or set externally

api_key = os.getenv("COMETAPI_API_KEY")
llm = CometAPI(
    api_key=api_key,          # or pass None to use env var

    model="gpt-4o-mini",      # change model string as required

    max_tokens=256,
    context_window=4096,
)

# build a simple index (local documents)

documents = SimpleDirectoryReader("data/").load_data()
index = VectorStoreIndex.from_documents(documents)

# get a query engine that uses the default llm (you can often pass llm to the query method)

query_engine = index.as_query_engine(llm=llm)   # some LlamaIndex versions accept llm here

response = query_engine.query("Summarize the key points of the corpus.")
print(response)

如何在 LlamaIndex 中使用 CometAPI 功能?(高级示例)

1) 使用 ChatMessage 列表调用 chat

示例:

# Initialize LLM

llm = CometLLM(
    api_key=api_key,
    max_tokens=256,
    context_window=4096,
    model="gpt-5-chat-latest",
)

# Chat call using ChatMessage

from llama_index.core.llms import ChatMessage

messages = [
    ChatMessage(role="system", content="You are a helpful assistant"),
    ChatMessage(role="user", content="Say 'Hi' only!"),
]
resp = llm.chat(messages)
print(resp)

# Use complete method

resp = llm.complete("Who is Kaiming He")
print(resp)

预期输出

  • 聊天响应:例如,assistant: Hi
  • 补全响应:例如,一段关于 Kaiming He 的文字描述,包括 ResNet 的信息。

这复现了聊天语义(system / user / assistant 角色),通常能带来更可控的输出。该示例发送一条简单消息并获取模型响应。你可以自定义消息以处理更复杂的交互。

CometAPI 是否支持流式输出?

是的——CometAPI 支持聊天与补全的流式输出,LlamaIndex 也在其 LLM 封装上暴露了流式方法(stream_chatstream_complete、streamable 模式)。对于实时应用,请使用 stream_chatstream_complete 获取流式响应。示例:

# Streaming chat

message = ChatMessage(role="user", content="Tell me what ResNet is")
resp = llm.stream_chat()
for r in resp:
    print(r.delta, end="")

# Streaming completion

resp = llm.stream_complete("Tell me about Large Language Models")
for r in resp:
    print(r.delta, end="")

预期输出: 分块打印的响应内容,例如对 ResNet 的解释或对大型语言模型的概述。

说明: stream_chatstream_complete 逐块生成响应,适合实时输出。在生产环境中请通过稳健的重试/超时逻辑处理背压与网络错误。

快速切换模型

# try Claude from CometAPI

claude_llm = CometAPI(api_key=api_key, model="claude-3-7-sonnet-latest", max_tokens=300)
svc = ServiceContext.from_defaults(llm=claude_llm)
index = VectorStoreIndex.from_documents(documents, service_context=svc)
print(index.as_query_engine().query("Explain in one paragraph."))

由于 CometAPI 统一了端点,切换模型仅需调整构造参数——无需重写提示词流水线。

技巧与优化方法

如何管理成本与 Token

  • 使用检索:只发送检索到的上下文,而非整个语料。
  • 在检索/摘要阶段试用更小的模型,最终答案综合再用更强的模型。借助 CometAPI,切换模型非常容易。

可靠性与速率限制

  • 实现重试 + 退避以应对瞬时错误。
  • 遵守 CometAPI 速率限制,并为每次请求实施 Token 预算。在构造函数中关注 max_tokens

可观测性与调试

  • 使用 LlamaIndex 的回调管理器捕获提示词、响应与 Token 使用,并将日志对接到你的监控体系。LlamaIndex 文档涵盖可观测性模式与集成。

缓存与延迟

  • 对重复查询或确定性提示词(如标准摘要)缓存 LLM 输出。
  • 可采用小而快的模型做第一步,仅在必要时升级到高成本模型。

安全

  • 将 CometAPI 密钥保存在机密存储(Vault/云端密钥)中——不要硬编码在代码里。
  • 若数据敏感,请确保所选的 CometAPI 方案或模型满足合规要求。

故障排查清单

  • 环境变量错误:若 LlamaIndex 无法找到密钥,请在 CometAPI() 构造函数中显式传入 api_key=。 (文档展示了环境变量与构造函数两种方式。)
  • 模型不受支持:在 CometAPI 的模型列表中确认模型名——不是每个账户都能使用所有模型。
  • 索引错误:确认文档解析正确(编码、文件类型)。快速测试可使用 SimpleDirectoryReader 摄取。
  • 版本漂移:LlamaIndex 在持续演进(ServiceContext → Settings 迁移)。若示例失败,请查看与你安装版本对应的文档与迁移指南。

快速开始

CometAPI 是一个统一的 API 平台,将来自顶级提供商的 500+ AI 模型(例如 OpenAI 的 GPT 系列、Google 的 Gemini、Anthropic 的 Claude、Midjourney、Suno 等)聚合到单一、对开发者友好的接口中。通过提供一致的鉴权、请求格式与响应处理,CometAPI 显著简化了在应用中集成 AI 能力的过程。无论你在构建聊天机器人、图像生成器、音乐创作工具,还是数据驱动的分析流水线,CometAPI 都能帮助你更快迭代、控制成本、保持厂商无关,同时紧跟 AI 生态的最新突破。

开始之前,请在 Playground 体验各模型能力,并查阅 LlamaIndex 获取详细说明。访问前,请确保你已登录 CometAPI 并获取 API 密钥。CometAPI 提供远低于官方价格的方案,助你快速集成。

准备好开始了吗?→ 立即注册 CometAPI

常见问题

如何调试延迟或流式中断?

  • 使用本地网络抓包(或在 HTTP 客户端中开启日志)检查流式帧。
  • 先试用更简单的模型,以确认瓶颈在网络/SDK 路径,而非模型本身。

我应该选择哪个模型?

  • 对高 QPS 或短答任务使用更小/更便宜的聊天模型(如 gpt-4o-minio4-mini,或各厂商的紧凑型模型)。
  • 将大型多模态/链式推理模型留给高成本的复杂推理任务。
  • 基准测试时延与成本:CometAPI 的优势之一是能在同一代码路径下快速切换模型——尽可能多做对比实验。

我该选择哪个索引与向量存储?

  • FAISS:适合本地/单机的高速检索。
  • Pinecone / Weaviate:适合托管级规模与多区域可用性(LlamaIndex 通过集成支持众多向量存储)。请根据规模与延迟需求进行选择。
阅读更多

一个 API 中超 500 个模型

最高 20% 折扣