Skip to main content
Open In ColabOpen on GitHub

ChatFireworks

本文档将帮助您开始使用 Fireworks AI 聊天模型。有关所有 ChatFireworks 功能和配置的详细文档,请访问 API 参考

Fireworks AI 是一个用于运行和自定义模型的 AI 推理平台。有关 Fireworks 提供的所有模型列表,请参阅 Fireworks 文档

概览

集成详情

本地可序列化JS 支持包下载量包最新版本
ChatFireworkslangchain-fireworksbetaPyPI - DownloadsPyPI - Version

模型功能

工具调用结构化输出JSON 模式图像输入音频输入视频输入Token 级流式传输原生异步Token 使用量Logprobs

设置

要访问 Fireworks 模型,您需要创建 Fireworks 账户、获取 API 密钥,并安装 langchain-fireworks 集成包。

凭据

前往 https://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

实例化

现在我们可以实例化我们的模型对象并生成聊天补全:

  • TODO: 使用相关参数更新模型实例化。
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 Reference: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.

Chaining

我们可以像这样将模型与提示模板链接起来:

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 Reference: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.com/api_reference/fireworks/chat_models/langchain_fireworks.chat_models.ChatFireworks.html