LangChain 登录配置怎么用:获取密钥并填到正确位置
LangChain 本身通常不需要登录;真正需要鉴权的是模型提供商密钥,而 Deep Agents Code 可用 /auth 管理密钥。2026 年 10 月 29 日更新的官方凭据文档明确区分了“已保存”和“环境变量”两种来源。现在值得重新排查,是因为不少项目其实需要的是提供商密钥,而不是 LangChain 账号登录。
先分清:你要登录的是谁
LangChain 是构建大模型应用的框架,本身不要求用户注册账号。官方 Python 文档给出的安装后示例直接创建 Agent,并让 create_agent 使用 OpenAI、Google Gemini、Claude、OpenRouter 等模型。鉴权发生在这些模型提供商一侧:先取得提供商 API key,再把它交给 LangChain 使用的集成包。各提供商密钥的添加与管理有官方统一流程——见 Deep Agents Code · Credentials 文档(Add and manage API keys for model providers、Tavily 与 LangSmith tracing),推荐用 /auth 凭据管理器逐个添加,而不是散落在各处。
| 实际操作 | 是否需要 LangChain 账号 | 密钥放在哪里 | 适合场景 |
|---|---|---|---|
| 使用 Python LangChain | 不需要 | 模型集成包读取的提供商环境变量 | 本地脚本、Notebook、服务端应用 |
| 使用 LangChain.js | 不需要 | Node.js 进程可读取的环境变量 | TypeScript、Next.js、Edge 应用 |
| 使用 Deep Agents Code | 不需要 LangChain 登录 | /auth 凭据管理器或环境变量 |
终端中的交互式开发 |
| 使用 LangSmith | 需要 LangSmith 账户与 API key | LANGSMITH_API_KEY 或客户端参数 |
追踪、调试、评估 Agent 运行 |
这里最容易走错的一步,是看到“LangChain 登录”就去注册框架账号。框架负责组合模型、工具与中间件,提供商负责校验 API key,LangSmith负责观测和追踪;三者不是同一个登录入口。
Python:安装后把密钥交给模型集成
先在项目目录安装 LangChain 和准备使用的模型集成。以下命令来自 LangChain 官方概览:
# pip install -qU langchain "langchain[openai]"
以 OpenAI 为例,在启动 Python 或 Notebook 的同一个终端中设置 OPENAI_API_KEY。密钥应来自 OpenAI 的 API 凭据页面,不要写进公开仓库、截图或前端代码。Python 进程启动后再修改 shell 环境变量不会自动刷新;最简单的验证方式是退出当前进程,在设置变量的同一 shell 中重新运行。
随后可以直接使用官方概览中的 Agent 示例:
from langchain.agents import create_agent
agent = create_agent(
model="openai:gpt-5.5",
tools=[],
system_prompt="You are a helpful assistant",
)
result = agent.invoke({
"messages": [
{"role": "user", "content": "What's the weather in San Francisco?"}
]
})
首次安装时,官方命令还会安装 OpenAI 集成:
# pip install -qU langchain "langchain[openai]"
如果改用 Google Gemini 或 Claude,要安装对应的集成包,不能只安装核心 langchain。模型名称也必须与已安装的集成匹配,例如官方示例分别使用 google_genai:gemini-2.5-flash-lite(官方示例原文)一类提供商前缀和 Claude 模型标识;把模型名写对只是第一步,未提供该提供商密钥时,请求仍会在调用阶段失败。
JavaScript:密钥必须进入 Node.js 进程
LangChain.js 官方仓库给出的快速安装命令是:
npm install -S langchain
仓库也支持 pnpm 和 Yarn:
pnpm install langchain
yarn add langchain
但 npm、pnpm、Yarn 只安装库,不负责替用户获取模型密钥。配置时要把提供商密钥放进运行 Node.js 的环境变量,并确保启动脚本能够读取它。浏览器构建则要特别注意:NEXT_PUBLIC_ 一类公开环境变量会把值暴露给客户端,不能用来保存服务端 API key。
LangChain.js 官方仓库列出的运行环境包括 Node.js 20.x、22.x 和 24.x,以及 Cloudflare Workers、Vercel、Next.js、Supabase Edge Functions、Browser、Deno 与 Bun。可在终端执行以下命令确认当前版本:
node -v
如果输出不是上述三个受支持版本,先升级到其中一个,再继续排查密钥问题。
Deep Agents Code:用 /auth 填到正确位置
如果卡在终端交互、Deep Agents Code 或某个 /auth 会话,官方 Provider credentials 文档 给出的推荐入口是在任意会话中输入:
/auth
凭据管理器会列出已安装的大模型提供商,以及该提供商是否已经设置环境变量密钥。它还提供三个直接动作:为已安装提供商新增或替换密钥、安装尚未安装的提供商支持、删除已经保存的密钥。通过 /auth 添加的密钥会跨会话保存。
界面中的来源标签很重要:
| 显示标签 | 含义 | 你应该检查什么 |
|---|---|---|
[stored] |
密钥已通过 /auth 保存在凭据管理器中 |
是否添加了正确提供商,密钥是否过期 |
[env: VARNAME] |
密钥来自指定环境变量 | 启动终端、IDE 或服务时是否加载了变量 |
| 未显示环境变量 | 当前提供商没有发现对应环境密钥 | 用 /auth 添加,或重新启动加载环境变量的终端 |
非交互式运行无法使用 /auth 弹窗。官方文档说明,此时可在 shell 中使用 dcode auth 管理同一批已保存密钥,或者改用环境变量。对于 CI、容器和后台服务,环境变量通常更容易复现;交互式开发则优先使用 /auth,因为它能直接显示密钥究竟来自哪里。
密钥放错位置时怎么判断
排查时不要只看“代码里写了 api_key”,而要沿着实际解析顺序看。先确认提供商名称,再确认密钥来源,最后确认运行进程能读取它。同一密钥同时存在于多个位置时,具体采用哪一项取决于当前产品的密钥解析规则;不要凭直觉认为后写入的环境变量一定覆盖 /auth 中的存储值。
常见卡点一是在错误的终端设置环境变量。终端 A 设置了变量,却在终端 B、IDE 启动按钮或 CI Runner 中运行代码,此时程序当然读不到。解法是在真正启动程序的同一个终端启动,或把变量写入该运行环境实际读取的配置文件。
常见卡点二是把 LangSmith key 填成模型提供商 key。LangSmith 用于追踪和评估 Agent,模型调用仍需要对应提供商的密钥,两者不能互换。要单独配置 LangSmith,可参考官方 langchain-auth 安装文档:
pip install langchain-auth
JavaScript 对应安装包为:
npm install @langchain/auth
这两个命令只安装鉴权客户端;使用自托管 LangSmith 时,还需按该文档设置实例 API 地址。
成功标志与延伸入口
最可靠的确认方式不是看到“配置成功”,而是完成一次最小模型请求。Python 示例应返回消息内容,终端调用应显示模型回复;若使用 /auth,对应提供商行应显示 [stored] 或 [env: VARNAME],而不是“未设置环境密钥”。
版本与能力变化可查看 LangChain Python Changelog,JavaScript 代码则可直接查看 langchainjs 官方仓库。若凭据管理器本身无法打开或交互异常,可通过 LangChain 文档 Issue 入口提交问题;提问时附上 /auth 中显示的密钥来源标签,但不要贴出密钥原文。
参考来源
评论区
登录后可评论。