【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)
相关推荐
沃尔威武21 小时前
数据库 Sinks(.net8)
数据库·.net·webview
Dreamboat¿1 天前
SQL 注入漏洞
数据库·sql
寻找奶酪的mouse1 天前
服务端视角下的AI Agent 架构解析
agent
曹牧1 天前
Oracle数据库中,将JSON字符串转换为多行数据
数据库·oracle·json
被摘下的星星1 天前
MySQL count()函数的用法
数据库·mysql
末央&1 天前
【天机论坛】项目环境搭建和数据库设计
java·数据库
徒 花1 天前
数据库知识复习07
数据库·作业
素玥1 天前
实训5 python连接mysql数据库
数据库·python·mysql
jnrjian1 天前
text index 查看index column index定义 index 刷新频率 index视图
数据库·oracle
瀚高PG实验室1 天前
审计策略修改
网络·数据库·瀚高数据库