ChatFeatherlessAi
这将帮助您开始使用 FeatherlessAi 聊天模型。有关所有 ChatFeatherlessAi 功能和配置的详细文档,请查阅 API 参考。
- 请访问 https://featherless.ai/ 查看示例。
概述
集成详情
类别 | 包 | 本地 | 可序列化 | JS 支持 | 包下载量 | 最新包版本 |
---|---|---|---|---|---|---|
ChatFeatherlessAi | langchain-featherless-ai | ✅ | ❌ | ❌ |
模型特性
工具调用 | 结构化输出 | JSON 模式 | 图片输入 | 音频输入 | 视频输入 | 逐令牌流式传输 | 原生异步 | 令牌使用量 | 对数概率 |
---|---|---|---|---|---|---|---|---|---|
❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ |
设置
要访问 Featherless AI 模型,您需要创建一个 Featherless AI 账户,获取一个 API 密钥,并安装 langchain-featherless-ai
集成包。
凭证
请访问 https://featherless.ai/ 注册 FeatherlessAI 并生成 API 密钥。完成此操作后,请设置 FEATHERLESSAI_API_KEY 环境变量。
import getpass
import os
if not os.getenv("FEATHERLESSAI_API_KEY"):
os.environ["FEATHERLESSAI_API_KEY"] = getpass.getpass(
"Enter your FeatherlessAI API key: "
)
如果您希望对模型调用进行自动化追踪,也可以通过取消注释下方内容来设置您的 LangSmith API 密钥。
# os.environ["LANGSMITH_TRACING"] = "true"
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
安装
LangChain FeatherlessAi 集成位于 langchain-featherless-ai
包中。
%pip install -qU langchain-featherless-ai
Note: you may need to restart the kernel to use updated packages.
实例化
现在我们可以实例化模型对象并生成聊天补全
from langchain_featherless_ai import ChatFeatherlessAi
llm = ChatFeatherlessAi(
model="featherless-ai/Qwerky-72B",
temperature=0.9,
max_tokens=None,
timeout=None,
)
调用
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
c:\Python311\Lib\site-packages\pydantic\main.py:463: UserWarning: Pydantic serializer warnings:
PydanticSerializationUnexpectedValue(Expected `int` - serialized value may not be as expected [input_value=1747322408.706, input_type=float])
return self.__pydantic_serializer__.to_python(
AIMessage(content="J'aime programmer.", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 5, 'prompt_tokens': 27, 'total_tokens': 32, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'featherless-ai/Qwerky-72B', 'system_fingerprint': '', 'id': 'G1sgui', 'service_tier': None, 'finish_reason': 'stop', 'logprobs': None}, id='run--6ecbe184-c94e-4d03-bf75-9bd85b04ba5b-0', usage_metadata={'input_tokens': 27, 'output_tokens': 5, 'total_tokens': 32, 'input_token_details': {}, 'output_token_details': {}})
print(ai_msg.content)
J'aime programmer.
链式调用
我们可以像这样将模型与提示模板链式连接起来
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate(
[
(
"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
c:\Python311\Lib\site-packages\pydantic\main.py:463: UserWarning: Pydantic serializer warnings:
PydanticSerializationUnexpectedValue(Expected `int` - serialized value may not be as expected [input_value=1747322423.487, input_type=float])
return self.__pydantic_serializer__.to_python(
AIMessage(content='Ich liebe Programmieren.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 5, 'prompt_tokens': 22, 'total_tokens': 27, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'featherless-ai/Qwerky-72B', 'system_fingerprint': '', 'id': 'BoBqht', 'service_tier': None, 'finish_reason': 'stop', 'logprobs': None}, id='run--67464357-83d1-4591-9a62-303ed74b8148-0', usage_metadata={'input_tokens': 22, 'output_tokens': 5, 'total_tokens': 27, 'input_token_details': {}, 'output_token_details': {}})
API 参考
有关所有 ChatFeatherlessAi 功能和配置的详细文档,请查阅 API 参考