Python调用大模型API实战教程
环境准备
首先需要安装openai库:
API申请
- 访问 Deepseek 官网注册账号
- 在个人中心申请 API Key
- 获取到形如
sk-0f2245****a0bb3f1e
的密钥
- 充值以获得API调用额度
代码实现
1. 基础配置
1 2 3 4 5 6 7 8 9 10
| from openai import OpenAI from datetime import datetime import pandas as pd import os
client = OpenAI( api_key="your-api-key", base_url="https://api.deepseek.com/v1" )
|
2. 定义Prompt模板
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| PROMPT_TEMPLATES = { "student_info": { "system": """你是一个专注于学生基本信息分析的教育数据专家。 - 擅长处理学生个人信息、人口统计学特征 - 注重学生信息的隐私保护 - 专注于人口特征统计和分布分析""", "background": """正在分析学生基本信息数据: - 数据类型:学生个人基本信息 - 包含字段:学号、姓名、性别、年龄、籍贯等 - 分析目标:了解学生群体的基本特征分布""" } }
|
3. 数据读取函数
1 2 3 4 5 6 7 8
| def read_data_file(file_path): """读取数据文件""" if file_path.endswith('.csv'): return pd.read_csv(file_path) elif file_path.endswith('.xlsx'): return pd.read_excel(file_path) else: raise ValueError("不支持的文件格式,请使用 CSV 或 Excel 文件")
|
4. 创建分析请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| def create_analysis_request(data_type, specific_task, data_file=None): """创建并发送分析请求""" if data_type not in PROMPT_TEMPLATES: raise ValueError(f"不支持的数据类型: {data_type}") template = PROMPT_TEMPLATES[data_type] data_overview = "" if data_file: df = read_data_file(data_file) data_overview = f""" 数据概览: - 总记录数:{len(df)} - 字段列表:{', '.join(df.columns)} - 数据示例:\n{df.head(3).to_string()} """ response = client.chat.completions.create( model="deepseek-chat", messages=[ {"role": "system", "content": template["system"]}, {"role": "user", "content": template["background"] + data_overview}, {"role": "user", "content": specific_task} ], temperature=0.3 ) return response.choices[0].message.content
|
5. 使用示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| specific_task = """请分析以下内容: 1. 数据完整性检查 2. 主要指标的分布情况 3. 异常值检测和处理建议
输出要求: - 格式:分点列出 - 包含具体数值和百分比 - 提供可视化建议"""
file_path = "path/to/your/data.xlsx" analysis_result = create_analysis_request("student_info", specific_task, file_path) print(analysis_result)
|