【Agent智能体项目实战三】LangChain调用通义千问保姆级教程

本文手把手教你使用 LangChain_Community 快速对接阿里云通义千问大模型,实现Python代码调用,新手也能直接跑通!

一、前置准备

1. 开通阿里云通义千问

  1. 打开阿里云 DashScope 平台:https://dashscope.aliyun.com/
  2. 注册/登录后,创建 API-KEY
  3. 记录你的 DASHSCOPE_API_KEY,后面代码会用到

2. 安装依赖库

bash 复制代码
pip install langchain langchain_community

二、完整可运行代码

下面是最简可运行示例,直接复制替换API-KEY即可使用:

python 复制代码
# 导入依赖
import os
from langchain_community.llms.tongyi import Tongyi

# 设置 DashScope API 密钥
os.environ["DASHSCOPE_API_KEY"] = "你的API-KEY"

# 初始化通义千问模型
model = Tongyi(
    model="qwen-plus"  # 可替换:qwen-turbo、qwen-plus、qwen-max等
)

# 调用模型(invoke方法)
response = model.invoke(input="你是什么模型?你能干什么?")

# 输出结果
print(response)

三、代码逐行解释

1. 导入模块

python 复制代码
import os
from langchain_community.llms.tongyi import Tongyi
  • os:用于设置环境变量,传入API密钥
  • Tongyi:LangChain封装好的通义千问大模型调用类

2. 配置API密钥

python 复制代码
os.environ["DASHSCOPE_API_KEY"] = "你的API-KEY"
  • 必须通过环境变量传入密钥,这是官方推荐方式
  • 不要硬编码密钥到生产代码中!

3. 初始化模型

python 复制代码
model = Tongyi(
    model="qwen-plus"
)

常用模型列表:

  • qwen-turbo:速度快、性价比高
  • qwen-plus:综合能力更强
  • qwen-max:最强能力模型
  • 更多模型见阿里云DashScope官方文档

4. 调用模型 & 输出结果

python 复制代码
response = model.invoke(input="你是什么模型?你能干什么?")
print(response)
  • invoke():LangChain统一的同步调用方法
  • 输入为字符串,输出为模型返回的文本结果

四、运行结果示例

执行代码后,你会看到类似输出:

复制代码
我是阿里云研发的通义千问大模型。
我可以帮你:
1. 回答各类问题、提供知识科普
2. 写代码、文案、总结、翻译
3. 逻辑推理、规划方案
4. 对话聊天、提供建议等

五、常见问题(避坑指南)

  1. 报错:API-KEY无效
    • 检查密钥是否复制完整
    • 确认账号已开通通义千问服务
  2. 报错:模型不存在
    • 检查model名称是否正确,如qwen-plus不要写错
  3. 网络超时
    • 确保网络可以正常访问阿里云服务

六、扩展用法(进阶)

1. 批量提问(generate)

python 复制代码
response = model.generate(["你好", "介绍一下Python"])
print(response.generations)

2. 流式输出

python 复制代码
for chunk in model.stream("写一段春天的文案"):
    print(chunk, end="", flush=True)
相关推荐
无糖可乐没有灵魂1 小时前
AI Agent结构图例和工作流程描述
ai·llm·prompt·agent·mcp·skills
HIT_Weston6 小时前
65、【Agent】【OpenCode】用户对话提示词(费米估算)
人工智能·agent·opencode
Flying pigs~~7 小时前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
misL NITL7 小时前
mysql之如何获知版本
数据库·mysql
程序员柒叔8 小时前
OpenClaw 一周动态-2026-W18
人工智能·agent·openclaw
许彰午8 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
OpenClawCSDN8 小时前
2026年怎么集成Hermes Agent/OpenClaw?阿里云搭建及token Plan配置攻略
阿里云·云计算
2401_832365528 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
2301_779622419 小时前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
墨心@9 小时前
赋予智能体技能,让其胜任现实世界任务
语言模型·大语言模型·agent