ChatFireworks
此文档帮助您开始使用 Fireworks AI 聊天模型。有关所有 ChatFireworks 功能和配置的详细文档,请访问 API 参考。
Fireworks AI 是一个 AI 推理平台,用于运行和自定义模型。有关 Fireworks 提供的所有模型的列表,请参阅 Fireworks 文档。
概述
集成详情
类 | 包 | 本地 | 可序列化 | JS 支持 | 包下载 | 包最新 |
---|---|---|---|---|---|---|
ChatFireworks | langchain-fireworks | ❌ | 测试版 | ✅ |
模型功能
工具调用 | 结构化输出 | JSON 模式 | 图像输入 | 音频输入 | 视频输入 | 令牌级流 | 原生异步 | 令牌使用 | 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://python.langchain.ac.cn/api_reference/fireworks/chat_models/langchain_fireworks.chat_models.ChatFireworks.html