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
相关推荐
Java后端的Ai之路8 小时前
【Python 教程15】-Python和Web
python
那个村的李富贵8 小时前
光影魔术师:CANN加速实时图像风格迁移,让每张照片秒变大师画作
人工智能·aigc·cann
冬奇Lab9 小时前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
腾讯云开发者9 小时前
“痛点”到“通点”!一份让 AI 真正落地产生真金白银的实战指南
人工智能
CareyWYR9 小时前
每周AI论文速递(260202-260206)
人工智能
hopsky10 小时前
大模型生成PPT的技术原理
人工智能
禁默11 小时前
打通 AI 与信号处理的“任督二脉”:Ascend SIP Boost 加速库深度实战
人工智能·信号处理·cann
心疼你的一切11 小时前
昇腾CANN实战落地:从智慧城市到AIGC,解锁五大行业AI应用的算力密码
数据仓库·人工智能·深度学习·aigc·智慧城市·cann
AI绘画哇哒哒11 小时前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
数据分析能量站11 小时前
Clawdbot(现名Moltbot)-现状分析
人工智能