ChatFireworks
本文件協助您開始使用 Fireworks AI 聊天模型。如需 ChatFireworks 所有功能和設定的詳細文件,請參閱 API 參考文件。
Fireworks AI 是一個 AI 推論平台,用於執行和自訂模型。如需 Fireworks 提供的所有模型列表,請參閱 Fireworks 文件。
概觀
整合詳細資訊
類別 | 套件 | 本地 | 可序列化 | JS 支援 | 套件下載次數 | 套件最新版本 |
---|---|---|---|---|---|---|
ChatFireworks | langchain-fireworks | ❌ | beta | ✅ |
模型功能
工具呼叫 | 結構化輸出 | JSON 模式 | 圖片輸入 | 音訊輸入 | 影片輸入 | Token 層級串流 | 原生非同步 | Token 使用量 | Logprobs |
---|---|---|---|---|---|---|---|---|---|
✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
設定
若要存取 Fireworks 模型,您需要建立一個 Fireworks 帳戶、取得 API 金鑰,並安裝 langchain-fireworks
整合套件。
憑證
前往 (ttps://fireworks.ai/login 註冊 Fireworks 並產生 API 金鑰。完成後,設定 FIREWORKS_API_KEY 環境變數
import getpass
import os
if "FIREWORKS_API_KEY" not in os.environ:
os.environ["FIREWORKS_API_KEY"] = getpass.getpass("Enter your Fireworks API key: ")
如果您想要取得模型呼叫的自動追蹤,您也可以取消註解下方內容來設定您的 LangSmith API 金鑰
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
# os.environ["LANGSMITH_TRACING"] = "true"
安裝
LangChain Fireworks 整合位於 langchain-fireworks
套件中
%pip install -qU langchain-fireworks
實例化
現在我們可以實例化我們的模型物件並產生聊天完成
- 待辦事項:使用相關參數更新模型實例化。
from langchain_fireworks import ChatFireworks
llm = ChatFireworks(
model="accounts/fireworks/models/llama-v3-70b-instruct",
temperature=0,
max_tokens=None,
timeout=None,
max_retries=2,
# other params...
)
API 參考文件:ChatFireworks
調用
messages = [
(
"system",
"You are a helpful assistant that translates English to French. Translate the user sentence.",
),
("human", "I love programming."),
]
ai_msg = llm.invoke(messages)
ai_msg
AIMessage(content="J'adore la programmation.", response_metadata={'token_usage': {'prompt_tokens': 35, 'total_tokens': 44, 'completion_tokens': 9}, 'model_name': 'accounts/fireworks/models/llama-v3-70b-instruct', 'system_fingerprint': '', 'finish_reason': 'stop', 'logprobs': None}, id='run-df28e69a-ff30-457e-a743-06eb14d01cb0-0', usage_metadata={'input_tokens': 35, 'output_tokens': 9, 'total_tokens': 44})
print(ai_msg.content)
J'adore la programmation.
串鏈
我們可以像這樣使用提示範本串鏈我們的模型
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate.from_messages(
[
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}.",
),
("human", "{input}"),
]
)
chain = prompt | llm
chain.invoke(
{
"input_language": "English",
"output_language": "German",
"input": "I love programming.",
}
)
API 參考文件:ChatPromptTemplate
AIMessage(content='Ich liebe das Programmieren.', response_metadata={'token_usage': {'prompt_tokens': 30, 'total_tokens': 37, 'completion_tokens': 7}, 'model_name': 'accounts/fireworks/models/llama-v3-70b-instruct', 'system_fingerprint': '', 'finish_reason': 'stop', 'logprobs': None}, id='run-ff3f91ad-ed81-4acf-9f59-7490dc8d8f48-0', usage_metadata={'input_tokens': 30, 'output_tokens': 7, 'total_tokens': 37})
API 參考文件
如需 ChatFireworks 所有功能和設定的詳細文件,請參閱 API 參考文件: https://langchain-python.dev.org.tw/api_reference/fireworks/chat_models/langchain_fireworks.chat_models.ChatFireworks.html