LangChain.js 实战系列:搭配 LangSmith 实现调试、监控、测试

📝 LangChain.js 是一个快速开发大模型应用的框架,它提供了一系列强大的功能和工具,使得开发者能够更加高效地构建复杂的应用程序。LangChain.js 实战系列文章将介绍在实际项目中使用 LangChain.js 时的一些方法和技巧。

LangSmith 是 LangChain 推出的 AI 应用调试、监控和测试平台。

LangSmith 会记录大模型发起的所有请求,除了输入输出,还能看到具体的所有细节,包括:

  1. 请求的大模型、模型名、模型参数
  2. 请求的时间、消耗的 token 数量
  3. 请求中的所有上下文消息,包括系统消息

比较亮眼的功能是,LangSmith 可以把某条请求添加进 Playground,然后直接调试修改,重放该请求:

选中某条请求,点击「Playground」:

进入 Playground 后,这条请求会包括原本的所有消息上下文、使用的模型、参数等等,我们就可以直接修改对应的提示词,点击「Start」去重放测试:

有这个重放功能,对于某些测试 case,就不需要费心先为这个 case 构建请求环境模拟,再调试提示词,直接在 Playground 就能直接调试提示词,相当方便了。

LangSmith 的集成挺简单的,只需要一个 API 和 URL 即可,我们直接进入官网:https://smith.langchain.com/

点击「Sign Up」,选择账号登录:


LangSmith 目前还处于 Beta 阶段,可以免费使用,但是会有白名单使用机制,如下就是 LangSmith 审核你的名单,还不能使用:


静候 LangSmith 的审核,或者去 LangSmith 的仓库里请求一个邀请码:
Request for Invitation Code - LangSmith

试过让已经进入 LangSmith 的朋友邀请进组织,不过不行

进入之后创建一个 API key:

然后在项目下设置这几个环境变量:

LANGCHAIN_TRACING_V2="true"
# 请求的 URL
LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
# API key
LANGCHAIN_API_KEY="YOUR_API_KEY"
# 项目名称
LANGCHAIN_PROJECT="YOUR_PROJECT_NAME"

其中 LANGCHAIN_PROJECT 可以不用设置,它会默认记录到一个叫做 default 的项目下。

设置之后,调用 LangChain 的方法:
LangChain.js 实战系列:入门介绍

发送的请求就都会记录到 LangSmith 上了:

其他的一些创建组织、创建项目等的常见功能可以自行体验,总的来说,LangSmith 目前对于开发调试一个 AI 应用来说很方便,不过这个项目属于闭源,并且会记录 API Key 一些敏感信息,因此是否使用 LangSmith 具体看自己的项目情况。

最后

推荐一些好用的资源

👉 StarFlow.tech ,一个集聊天、工作流和知识库的 AI 平台。在这里,你可以免费使用 ChatGPT3.5 和 3.5 16K,还有 GPT-4 Vision、DELL·E3、Midjourney 等多种模型可供选择。这个平台就像一个小型工作室,助力个人效率 Max!

👉 OpenAI 官方提示词指南 ,专门面向中文的提示词工程指南,该教程是 OpenAI 官方出版,主要包括了六大策略,轻松学习提示词技巧。

### 解决 Maven 中未解析依赖问题 当遇到 `dev.langchain4j:langchain4j-chroma:jar:0.35.0` 的未解析依赖问题时,可能的原因包括以下几个方面: #### 1. **检查本地仓库缓存** 如果本地 Maven 缓存损坏或者缺失该依赖项,则可能导致无法下载。可以尝试清理本地仓库并重新安装依赖。 运行以下命令来清除本地缓存: ```bash mvn dependency:purge-local-repository ``` 之后执行标准的构建流程以重新拉取依赖: ```bash mvn clean install ``` #### 2. **确认中央仓库是否存在目标版本** 有时特定版本并未发布到官方 Maven Central Repository 或其他默认远程仓库中。可以通过访问 [Maven Central](https://search.maven.org/) 并搜索 `dev.langchain4j:langchain4j-chroma` 来验证是否有对应版本号 `0.35.0` 存在[^1]。 如果没有找到匹配的结果,则说明此依赖尚未被上传至公共存储库,需联系开发者团队获取更多信息或寻找替代方案。 #### 3. **添加自定义镜像源地址** 部分开源项目会托管其构件于第三方私有仓库而非公开渠道上。对于 LangChain4J 而言,建议查阅文档了解是否提供了额外的 repository URL 地址。如果有指定位置,则应在 `pom.xml` 文件内的 `<repositories>` 部分加入相应条目以便正确加载资源。 例如,在某些情况下可增加如下片段: ```xml <repositories> <repository> <id>langchain4j</id> <url>https://repo.example.com/langchain4j</url> </repository> </repositories> ``` 注意替换实际可用链接作为上述示例中的占位符内容。 #### 4. **手动引入 JAR 包** 假如以上方法均不可行而仍然迫切需要使用这个组件的话,还可以考虑将其原始 jar 文件直接导入工程之中作为一种临时解决方案。具体操作步骤如下所示: - 下载所需版本的二进制包; - 使用 mvn 命令将它显式注册进入全局范围: ```bash mvn install:install-file \ -Dfile=/path/to/downloaded.jar \ -DgroupId=dev.langchain4j \ -DartifactId=langchain4j-chroma \ -Dversion=0.35.0 \ -Dpackaging=jar ``` 完成这些调整后再次尝试编译应该能够解决问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值