Python 调用大模型(LLM)

一、提示词工程

提示词(Prompt):是引导大模型(LLM)进行内容生成的命令(一句话、一个问题等)。

提示词工程(Prompt Enginnering):通过有技巧的编写提示词,使大模型生成出尽可能符合预期的内容,这一持续性的过程就成为提示词工程。

引导AI思考,约束其输出范围,并明确你期望的结果。

1.给大模型设定角色和能力。

你是一名经验丰富的高中历史老师,擅长生动有趣的讲解发杂历史事件。
2.明确核心请求与任务。

请向以为高中生解释发过大革命爆发的主要原因。
3.按步骤拆解复杂任务。

清闲阐述背景,然后分政治、经济、思想三个方面阐述,没电配一个例子。
4.指定风格和语气。

请使用简介、口语化、充满热情的语气(避免使用过于学术的术语)。
5.明确要求输出格式。

请严格按照如下结构输出:。。。
6.提供输入输出的示例。

可以参考:人类群星闪耀时:的叙事风格。请不要列出冗长的日期列表。

在OpenAI的官方文档中,对于写提示词专门有一篇文档,还给出了大量的例子:

https://platform.openai.com/docs/guides/prompt-engineering

通过优化提示词,让大模型生成出尽可能理想的内容,这一过程就称为提示词工程(Project Engineering)。

1.清晰明确的指令

  1. 直接说明任务类型(如总结、分类、生成),避免模糊表述。

  2. 示例:

    Plain 复制代码
     低效提示:"谈谈人工智能。"  
     高效提示:"用200字总结人工智能的主要应用领域,并列出3个实际用例。"

2.使用分隔符标记输入内容

  1. 用```、"""或XML标签分隔用户输入,防止提示注入。

  2. 示例:

    Plain 复制代码
      请将以下文本翻译为法语,并保留专业术语:
      """
      The patient's MRI showed.  
      Clinical diagnosis: .
      """

3.分步骤拆解复杂任务

  1. 将任务分解为多个步骤,逐步输出结果。

  2. 示例:

    Plain 复制代码
      步骤1:解方程 2x + 5 = 15,显示完整计算过程。  
      步骤2:验证答案是否正确。

4.提供示例(Few-shot Learning)

  1. 通过输入-输出示例指定格式或风格。

  2. 示例:

    Plain 复制代码
      将CSS颜色名转为十六进制值 
      输入:blue → 输出:#0000FF  
      输入:coral → 输出:#FF7F50  
      输入:teal → ?

5.指定输出格式

  1. 明确要求JSON、HTML或特定结构。

  2. 示例:

    Plain 复制代码
      生成3个虚构用户信息,包含id、name、email字段,用JSON格式输出,键名小写。

6.给模型设定一个角色

  1. 设定角色可以让模型在正确的角色背景下回答问题,减少幻觉。

  2. 示例:

    plain 复制代码
      你是一个音乐领域的百事通,你负责回答音乐领域的各种问题。禁止回答与音乐无关的问题

通过以上策略,可显著提升模型输出的准确性与可控性,适用于内容生成、数据分析等场景。

二、python调用DeepSeek

DeepSeek API 使用与 OpenAI 兼容的 API 格式,通过修改配置,您可以使用 OpenAI SDK 来访问 DeepSeek API,或使用与 OpenAI API 兼容的软件。

openAI 不是python官方提供的标准库,而是openAI官方提供的 :DeepSeek兼容了openai的API。

pypi:全称为python package index ,是由python官方和社区共同维护的Python第三方软件包的官方仓库。

pip:pip是Python官方提供的python包的管理工具,提供了对python包的查找、下载、安装、卸载等功能。

bash 复制代码
# 安装软件包(最新版本):
pip install openai
#安装软件包(指定版本):
pip install openai=2.13.0
#卸载软件包:
pip uninstall openai
#列出已安装的包:
pip list
#查看包详情:
pip show openai
python 复制代码
# Please install OpenAI SDK first: `pip3 install openai`
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get('DEEPSEEK_API_KEY'),
    base_url="https://api.deepseek.com")

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "system", "content": "你是一名非常可爱的AI助理,你的名字叫小甜甜,请你使用温柔可爱的语气回答用户的问题"},
        {"role": "user", "content": "你是谁,你能帮我做什么"},
    ],
    stream=False
)

print(response.choices[0].message.content)

三、Streamlit介绍

Streamlit是一个开源的Python库,专为数据工程师及机器学习工程师设计,用来快速基于Python代码构建交互式的web网站。

官方网站:https://streamlit.io/

官方文档:https://docs.streamlit.io/

使用步骤:

step1.安装Streamlit。

bash 复制代码
pip install streamlit

step2.在python文件中引入Streamlit。

step3.基于Streamlit中提供的API来构建Web应用。

python 复制代码
import streamlit as st

st.title("Hello, Streamlit!")
st.header("This is a header")
st.subheader("This is a subheader")

step4.运行程序:streamlit run xxxx.py。

bash 复制代码
streamlit run .\streamlit.py
相关推荐
用户4356782936377 分钟前
五线并行认知架构:从算力内卷到思考秩序的底层革命
人工智能
一 铭13 分钟前
WrenAI 详解:给 AI Agent 的开源 GenBI 引擎
人工智能·开源
say_fall15 分钟前
【AI大模型】MCP 模型上下文协议:客户端-服务器架构、JSON-RPC 消息与能力协商、工具发现与调用链路、与函数调用的分工
服务器·人工智能·架构
一条大祥脚25 分钟前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
早起CaiCai34 分钟前
【2023-01 OM】利用深度学习算法融合异质观测实现海洋场降尺度
人工智能·深度学习·算法
周杰伦的稻香41 分钟前
AI 助手 2.0:多轮对话、卡片化与文章页感知
人工智能
Martina_03211 小时前
AI生成3D场景从白模换成精模后镜头全偏了?用6步检查单位、枢轴与层级替换
图像处理·人工智能·3d·ai·自然语言处理·材质·1024程序员节
10年前端老司机1 小时前
Milvus 8种检索能力实践
数据库·python·agent
狒狒AI1 小时前
手绘白板动画的生产线拆解:AI 出图、笔迹对齐、镜头渲染七道工序(附 21 个开源脚本)
人工智能·aigc
用户2763965765101 小时前
上手 GitHub 官方 Spec Kit:AI 编码别再裸奔,先写 spec 再出码,SDD规约开发
人工智能