【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)
相关推荐
GIS阵地2 小时前
QgsDataSourceUri解析
数据库·c++·qt·开源软件·qgis
yunyun321232 小时前
自动化与脚本
jvm·数据库·python
暮冬-  Gentle°2 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
setmoon2142 小时前
构建一个基于命令行的待办事项应用
jvm·数据库·python
zabr2 小时前
花了 100+ 篇笔记,我整理出 了一套 AI Agent 工程完全指南
前端·后端·agent
IndulgeCui3 小时前
金仓数据库(KINGBASEES)敏感数据物理级销毁功能:配置、实操与验证全指南
数据库
Bat U3 小时前
MySQL数据库|建库&建表&数据类型
数据库·mysql
短剑重铸之日3 小时前
《ShardingSphere解读》16 改写引擎:如何理解装饰器模式下的 SQL 改写实现机制?
java·数据库·后端·sql·shardingsphere·分库分表·装饰器模式
m0_587958953 小时前
机器学习与人工智能
jvm·数据库·python