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

Python大模型应用开发实践 - 初探

实践环境

Python 3.11.9

PyCharm Community Edition 2025.1

非教程或科普文,仅记录我自己的探索实践过程。

一、使用阿里云服务

1、开通大模型

通义千问大模型功能开通https://common-buy.aliyun.com/?spm=a2c4g.11186623.0.0.5dc13048j78xTX&commodityCode=sfm_inference_public_cn

2、创建API-KEY

复制创建的API key,创建环境变量存储key值。

3、创建Python项目

新建项目文件夹

终端cd进入项目文件夹,检查Python提供的venv方案是否可用,然后终端输入指令创建虚拟环境

#检查venv是否可⽤
python -m venv --help#创建虚拟环境
python -m venv .venv#Windows激活虚拟环境
.venv\Scripts\activate#查看激活状态
where python

4、导入相关依赖 

终端运行以下命令安装或更新OpenAI Python SDK

pip install openai

如上所示,报一堆错 

#退出虚拟环境
deactivate#使用清华大学的镜像源升级pip
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple#禁用缓存以避免潜在问题
python -m pip install --upgrade pip --no-cache-dir#根据提示,升级一下pip
python -m pip install --upgrade pip#重新进入虚拟环境
.venv\Scripts\activate#重新安装openai
pip install openai#虚拟环境也升级下pip
python -m pip install --upgrade pip#查看下下载的依赖包
pip list

5、使用通义千问

import os
from openai import OpenAIclient = OpenAI(api_key=os.getenv("BAILIAN_API_KEY"),base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)completion = client.chat.completions.create(model="qwen-plus",messages=[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "你是谁?"},],
)print("\n")
print("-----------------------------Result:\n")
print(completion.model_dump_json(indent=4))

二、使用腾讯云服务

1、 开通服务

开通腾讯混元大模型https://hunyuan.cloud.tencent.com/#/app/modelSquare

2、选择大模型

选择一个大模型,点击“查看详情”

新建环境变量,存储API Key

3、创建Python项目调用

import os
from openai import OpenAIAPIKey = os.getenv("HUNYUAN_API_KEY")client = OpenAI(api_key=APIKey,base_url="https://api.hunyuan.cloud.tencent.com/v1",
)completion = client.chat.completions.create(model="hunyuan-turbos-latest",messages=[{"role": "user","content": "马斯克和特朗普之间的关系都经历了那些阶段?请帮梳理成时间轴!"}],extra_body={"enable_enhancement": True,},
)print("\n")
print("-----------------------------Result:\n")
print(completion.choices[0].message.content)

4、输出结果

三、使用百度智能云

1、开通服务、注册Key

2、调用大模型测试

使用文心一言【ernie-3.5-8k】大模型版本测试,根据官网接口示例创建Python

from random import choicesimport requests
import json
import osAPIKey = os.getenv("WENXIN_API_KEY")
Question = "特朗普跟内塔尼亚胡都有那些利益关联? 需要提炼概况后的答案。"def main():url = "https://qianfan.baidubce.com/v2/chat/completions"payload = json.dumps({"model": "ernie-3.5-8k","messages": [{"role": "system","content": "平台助手"},{"role": "user","content": Question}]})headers = {'Content-Type': 'application/json','Authorization': 'Bearer ' + APIKey}response = requests.request("POST", url, headers=headers, data=payload) # 类型 Class - 'requests.models.Response'jsonData = json.loads(response.text) # Dict类型formatted_json = json.dumps(jsonData, indent=4, ensure_ascii=False) # String 类型print("\n")print("-----------------------------Result:\n")print(formatted_json)print("\n")print("-----------------------------Main Content:\n")mainContent = jsonData["choices"][0]["message"]["content"];print(mainContent)if __name__ == '__main__':main()

测试后结果输出 

通过百度查询显示:

文心大模型 目前不支持通过OpenAI兼容的调用方式。

文心大模型主要基于 飞桨框架 (PaddlePaddle)开发,其推理服务接口采用 PaddlePaddle 的API设计,需通过 PaddlePaddle 客户端或服务端框架进行调用。而OpenAI兼容接口(如 OpenAI SDK )主要面向 OpenAPI 标准设计,两者在认证机制、API参数传递方式上存在本质差异。

3、千帆ModelBuilder与OpenAI兼容的使用方式

通过查询官网获知:

千帆ModelBuilder提供了与OpenAI兼容的使用方式,用户只需调整api_key、base_url、model等参数,就可以通过OpenAI SDK调用千帆ModelBuilder推理服务。

上手测试【qianfan-70b】:

import os
from openai import OpenAIAPIKey = os.getenv("WENXIN_API_KEY")Question = "百度发布的大模型是否支持openai兼容的调用模式?"client = OpenAI(api_key=APIKey,base_url="https://qianfan.baidubce.com/v2",
)
response = client.chat.completions.create(model="qianfan-70b",messages=[{"role": "system","content": "You are a helpful assistant."},{"role": "user","content": Question},],
)print("\n")
print("-----------------------------Result:\n")
print(response.model_dump_json(indent=4))print("\n")
print("-----------------------------Main Content:\n")
print(response.choices[0].message.content)

测试结果输出:

四、模型广场

百度云大模型广场:

阿里云大模型广场

腾讯云大模型广场

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

相关文章:

  • 金融系统中常用的FIX协议
  • 【三维重建】Flow Distillation Sampling:使用匹配先验的正则3DGS
  • 【阿里巴巴JAVA开发手册】IDE的text file encoding设置为UTF-8; IDE中文件的换行符使用Unix格式,不要使用Windows格式。
  • 物联网中的Unity/Unreal引擎集成:数字孪生与可视化控制
  • RabbitMQ 高级特性之死信队列
  • C++完美转发:实现高效的参数传递
  • 「日拱一码」017 深度学习常用库——TensorFlow
  • AI知识图谱在行业的应用
  • 微信小程序——skyline版本问题
  • 设计模式(九)
  • {{ }}和v-on:click
  • 两级缓存 Caffeine + Redis 架构:原理、实现与实践
  • Bean属性转换框架深度对比:从BeanUtils到MapStruct的演进之路
  • 【AI News | 20250702】每日AI进展
  • 修改阿里云vps为自定义用户登录
  • 大数据救公益:数字时代下的社会力量如何玩转“数据+善意”
  • 项目——视频共享系统测试
  • Element UI 完整使用实战示例
  • 【Python】图像识别的常用功能函数
  • c++ 的标准库 --- std::
  • 使用numpy的快速傅里叶变换的一些问题
  • x86汇编语言入门基础(三)汇编指令篇1 逻辑位运算
  • 6. 常见K线形态(楔形与旗形)
  • docker 介绍
  • redis缓存三大问题分析与解决方案
  • 在银河麒麟V10 SP1上手动安装与配置高版本Docker的完整指南
  • 归并排序详解
  • 【网工|知识升华版|实验】4 DHCP原理及应用
  • 数据结构20250620_数据结构考试
  • 南方大暴雨及洪水数据分析与可视化