メインコンテンツへスキップ
LlamaIndex は、CometAPI との主要な統合として CometLLM クラスを提供しています。これを使うことで、CometAPI のカタログ内の任意のモデルを用いて、RAG パイプライン、エージェント、LLM チェーンを構築できます。

前提条件

1

LlamaIndex の CometAPI 統合をインストール

pip install llama-index-llms-cometapi llama-index
2

API キーを設定

from llama_index.llms.cometapi import CometLLM
import os

os.environ["COMETAPI_KEY"] = "<COMETAPI_KEY>"
api_key = os.getenv("COMETAPI_KEY")
環境変数を使用する方が、スクリプト内に認証情報をハードコードするより安全です。
3

モデルを初期化して補完呼び出しを実行

from llama_index.core.llms import ChatMessage

llm = CometLLM(
    api_key=api_key,
    max_tokens=256,
    context_window=4096,
    model="your-model-id",
)

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

# Completion call
resp = llm.complete("Who is Kaiming He?")
print(resp)
4

ストリーミングを有効化

リアルタイムの分割出力には stream_chat または stream_complete を使用します:
# Streaming chat
message = ChatMessage(role="user", content="Tell me what ResNet is")
for chunk in llm.stream_chat([message]):
    print(chunk.delta, end="")

# Streaming completion
for chunk in llm.stream_complete("Tell me about Large Language Models"):
    print(chunk.delta, end="")
  • モデル: 利用可能なすべてのオプションは CometAPI Models ページ を参照してください。
  • 他のモデルを使う: 別の現在のモデル ID を指定して初期化します。例: CometLLM(api_key=api_key, model="your-model-id", max_tokens=1024)
  • ファインチューニング(Fine-tuning): temperaturemax_tokensCometLLM(...) に直接渡せます。
  • エラーハンドリング: キーのエラーやネットワークの問題を捕捉するため、呼び出しを try/except でラップしてください。
  • セキュリティ: API キーをバージョン管理にコミットしないでください。環境変数を使用してください。
  • 詳細ドキュメント: LlamaIndex documentationCometAPI クイックスタートColab example