调用通义千问(qwen-plus)模型demo-学习

1、准备工作

1、注册key(注意:key有免费100万token额度,超出会产生费用)

https://bailian.console.aliyun.com/?tab=model#/api-key

2、安装dashscope SDK

python 复制代码
pip install dashscope

3、将key放到环境变量中

2、代码

python 复制代码
#!/usr/bin/env python
# coding: utf-8

import os
import dashscope

# dashscope:阿里云通义千问的python sdk
# from dashscope import Generation:从 dashscope 模块中导入 Generation 类,用于调用大模型的文本生成接口,
# dashscope sdk内部包含多个功能模块:例如:
# Generation:文本生成(Qwen 等语言模型)
# ImageSynthesis:文生图(如通义万相)
# Speech:语音识别与合成
# TextEmbedding:获取文本向量
# 通过 from dashscope import Generation,只引入了文本生成相关的功能。
from dashscope import Generation

# 配置API密钥
api_key = os.environ.get('DASHSCOPE_API_KEY')
dashscope.api_key = api_key

# 封装模型响应函数(带异常处理)
def get_response(messages):
    try:
        # 发送请求到阿里云的模型服务
        response = Generation.call(
            model='qwen-plus',        # 使用qwen-plus模型
            messages=messages,        # 传入对话历史(系统提示 + 用户输入)
            result_format='message',  # 要求返回格式为标准的聊天消息结果
            temperature=0.0  # 固定温度,保证结果稳定,设置随机性为 0,让模型输出完全确定、可重复(相同输入永远得到相同输出),适合分类任务
        )

        if response.status_code == 200:
            return response.output.choices[0].message.content
        else:
            print(f"模型调用失败:{response.code} - {response.message}")
            return None
    except Exception as e:
        print(f"调用出错:{str(e)}")
        return None

# ========== 更换后的系统提示词和用户问题 ==========
# 待分析的文本
review = '这个手机续航太差了,用1小时就没电,太失望了!'
# 系统提示词:细分情绪(开心/生气/失望/中性)
messages=[
    {"role": "system", "content": "你是一名情感分析师,帮我判断用户文本的情绪类型,回复请用一个词语:开心、生气、失望、中性"},
    {"role": "user", "content": review}
]

# 获取并打印结果
result = get_response(messages)
if result:
    print(f"文本 '{review}' 的情绪类型:{result}")  # 预期输出:失望

3、了解模型有哪些参数

https://bailian.console.aliyun.com/?tab=model#/model-market

其实官网已经给出一些注意事项,和实现demo代码

官网:调用相关模型返回结果示例

相关推荐
小虎AI生活1 小时前
腾讯 Buddy One 架构解读:跨应用 Agent 底座怎么打通办公协同
aigc·ai编程
塞讯科技1 小时前
13,500 个分支被植入窃密工作流:Gheist 如何用 GitHub 令牌搬走仓库密钥
网络安全·ai·github·软件供应链安全·供应链投毒
蓝祁子yoky2 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
ZhengEnCi2 小时前
Agent 如何进行工具调用:从一次 Function Calling 到生产级工具编排的完整链路
llm·agent·ai编程
二哈赛车手2 小时前
新人笔记---hermes定时功能设计,具体讲解以及可优化点
java·人工智能·笔记·spring·ai·typescript
架构师伯子明3 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!3 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
幼儿园蛋小黄3 小时前
从 STM32N647 的 AI 部署入门嵌入式:一条可落地的学习路线
人工智能·stm32·学习
熊猫钓鱼>_>3 小时前
四种书签,一条时间线:一个读书 App 的记忆颗粒与它的边界案例【鸿蒙心迹】
开发语言·华为·ai编程·harmonyos·鸿蒙·openharmony·鸿蒙pc
yz_aiks4 小时前
WorkBuddy 使用技巧:Claude Code 国内平替,签到免费用、自动签到和手机远程控制电脑
人工智能·ai编程·效率工具·claude code·workbuddy