当前位置: 首页 > ops >正文

阿里千问Qwen大模型API调用(Python版)

在这里插入图片描述

一、API_KEY配置

1、登陆阿里百炼平台,单击创建我的API-KEY。
在这里插入图片描述

2、访问业务空间管理界面,找到需要授权的子业务空间后,单击其右侧的模型权限流控设置。
在这里插入图片描述

3、选择需要的模型,编辑权限,并保存
在这里插入图片描述

二、API调用

1、加载url图片

  • 传入图像URL进行图像理解的示例代码(python):
import os
from openai import OpenAIclient = OpenAI(api_key=os.getenv("DASHSCOPE_API_KEY"),base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)completion = client.chat.completions.create(model="qwen-vl-max-latest", # 此处以qwen-vl-max-latest为例,可按需更换模型名称。模型列表:https://help.aliyun.com/model-studio/getting-started/modelsmessages=[{"role": "system","content": [{"type": "text", "text": "You are a helpful assistant."}],},{"role": "user","content": [{"type": "image_url","image_url": {"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/emyrja/dog_and_girl.jpeg"},},{"type": "text", "text": "图中描绘的是什么景象?"},],},],
)print(completion.choices[0].message.content)
  • 通过curl方式获取结果:
curl --location 'https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{"model": "qwen-vl-max","messages": [{"role":"system","content":[{"type": "text", "text": "You are a helpful assistant."}]},{"role": "user","content": [{"type": "image_url", "image_url": {"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/emyrja/dog_and_girl.jpeg"}},{"type": "text", "text": "图中描绘的是什么景象?"}]}]
}'

2、加载本地图片

  • 加载本地图片进行图像理解:需要将本地文件编码为Base64格式后再传入
from openai import OpenAI
import os
import base64#  base 64 编码格式
def encode_image(image_path):with open(image_path, "rb") as image_file:return base64.b64encode(image_file.read()).decode("utf-8")# 将xxxx/eagle.png替换为你本地图像的绝对路径
base64_image = encode_image("xxx/eagle.png")client = OpenAI(# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"api_key=os.getenv('DASHSCOPE_API_KEY'),base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(model="qwen-vl-max-latest", # 此处以qwen-vl-max-latest为例,可按需更换模型名称。模型列表:https://help.aliyun.com/model-studio/getting-started/modelmessages=[{"role": "system","content": [{"type":"text","text": "You are a helpful assistant."}]},{"role": "user","content": [{"type": "image_url",# 需要注意,传入Base64,图像格式(即image/{format})需要与支持的图片列表中的Content Type保持一致。"f"是字符串格式化的方法。# PNG图像:  f"data:image/png;base64,{base64_image}"# JPEG图像: f"data:image/jpeg;base64,{base64_image}"# WEBP图像: f"data:image/webp;base64,{base64_image}""image_url": {"url": f"data:image/png;base64,{base64_image}"}, },{"type": "text", "text": "图中描绘的是什么景象?"},],}],
)
print(completion.choices[0].message.content)

官方参考链接:https://help.aliyun.com/zh/model-studio/vision?spm=a2c4g.11186623.0.0.349c2562o1Fzsi#da33480805fjh

http://www.xdnf.cn/news/5189.html

相关文章:

  • 张 SoulChat2.0:心理咨询师优化:提示词优化;构建数据集微调LLM
  • PMP-第五章 项目范围管理
  • 在资源受限设备上实现手势识别:基于包络EMG数据和实时测试的Tiny-ML方法
  • [架构之美]IntelliJ IDEA创建Maven项目全流程(十四)
  • 玩转Docker | 使用Docker部署DailyTxT日记工具
  • C语言文件流
  • 局域网常用的测速工具,Iperf3使用教程
  • QTableWidget实现多级表头、表头冻结效果
  • leetcode 349. Intersection of Two Arrays
  • 独立按键控制LED
  • [杂谈随感-13]: 人的睡眠,如何布置床的位置比较有安全?感?
  • HashMap中put()方法的执行流程
  • Python数据分析案例74——基于内容的深度学习推荐系统(电影推荐)
  • libwebsockets:高性能跨平台WebSocket库实践指南
  • C++——继承
  • 线程安全 1_线程安全
  • Ubuntu22.04怎么退出Emergency Mode(紧急模式)
  • Python环境搭建指南
  • 【redis 初阶】linux 上安装 redis
  • 电池的寿命(不清楚是什么类型/虽然有标明是贪心)
  • NVMe控制器IP设计之接口模块
  • 机器学习 day02
  • PD快充诱骗协议芯片XSP04D与主板共用一个Type-C和电脑传输数据
  • 关于Spring
  • 小刚说C语言刷题—1078求恰好使s=1+1/2+1/3+…+1/n的值大于X时n的值
  • 巡检机器人数据处理技术的创新与实践
  • 【Redis】string
  • Git 时光机:修改Commit信息
  • Java零组件实现配置热更新
  • gitkraken 使用教程