打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让程序运行过程一目了然
userphoto

2024.03.07 山东

关注
大家好,我是【同学小张】。持续学习,持续干货输出,关注我,跟我一起学AI大模型技术!
公众号内文章一览

有任何问题,欢迎+vx:jasper_8017,期待与志同道合的朋友一起讨论,共同进步!

今天介绍一个AI生产力工具:LangSmith。本篇文章主要在Tracing部分的实操,包括环境准备、如何将你的LangChain程序和LangSimth平台打通,如何使用LangSimth调试Prompt,以及如何进行在线数据标注和收集,为后面的自动化评估作准备。

在开始之前,我们先来了解下为什么要有LangSmith:

维护一个生产级的 LLM 应用,我们需要做什么?

  • 各种指标监控与统计:访问记录、响应时长、Token用量、计费等等

  • 调试 Prompt,Prompt 版本管理(便于升级/回滚)

  • 测试/验证系统的相关评估指标

  • 数据集管理(便于回归测试)

LangSimth平台帮助你快速、可视化完成上面的流程。它允许您调试、测试、评估和监控构建在任何LLM框架上的链和智能代理,并与LangChain无缝集成。

0. 环境准备

LangSmith是LangChain 官方的 SaaS 服务,不开源,注册需要排队。

平台入口:https://www.langchain.com/langsmith
文档地址:https://python.langchain.com/docs/langsmith/walkthrough

注册登录之后,需要生成API key

1. 打通LangChain和LangSmith

要打通 LangChain 和 LangSmith 很简单,只需要在环境变量中加入如下4个信息:

LANGCHAIN_API_KEY = "ls__xxxxxx"  # LangChain API Key
LANGCHAIN_ENDPOINT = "https://api.smith.langchain.com"  #LangSmith的服务端点
import os
os.environ["LANGCHAIN_TRACING_V2"]="true" 
os.environ["LANGCHAIN_PROJECT"]="test-001" #自定义项目名称

示例代码:

import os
os.environ["LANGCHAIN_TRACING_V2"]="true"
os.environ["LANGCHAIN_PROJECT"]="test-001"

from langchain_openai import ChatOpenAI
from langchain.prompts import PromptTemplate
from langchain.schema.output_parser import StrOutputParser
from langchain.schema.runnable import RunnablePassthrough
from langchain.schema import HumanMessage
from langchain.prompts.chat import HumanMessagePromptTemplate
from langchain.prompts import ChatPromptTemplate

model = ChatOpenAI(model="gpt-3.5-turbo-0613")

prompt_template = """
我的名字叫【{name}】,我的个人介绍是【{description}】。
请根据我的名字和介绍,帮我想一段有吸引力的自我介绍的句子,以此来吸引读者关注和点赞我的账号。
"""

prompt = ChatPromptTemplate.from_messages([
    HumanMessagePromptTemplate.from_template(prompt_template)
])

# 定义输出解析器
parser = StrOutputParser()

chain = (
    prompt
    | model
    | parser
)

## invoke的第一个参数,传入json格式的参数,key与prompt中的参数名一致
response = chain.invoke({'name''同学小张''description''热爱AI,持续学习,持续干货输出'})
print(response)

运行之后,可以在LangSmith服务平台上看到该项目的运行情况:



详细页面中展示了该项目运行的详细步骤,包括每一步的名称、消耗的token、耗时、输入和输出。

2. 使用LangSimth的PlayGround调试Prompt

Prompt模板和最终的Prompt以及输入给大模型的参数,如温度等,是大模型输出结果好坏的直接原因。我们可以使用LangSimth平台的PlayGround快速调试这些参数,来获得比较好的大模型结果,而不用每次都运行一遍程序。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
软件工程十大技术之一:AI辅助编码技术
第一批用 Prompt 工作的程序员,已经碾压同事了!
面向小白的本地部署大模型完整教程:LangChain Streamlit LLama
解读LangChain
LangChain 完整指南:使用大语言模型构建强大的应用程序
AI向量数据库
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服