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
相关推荐
程序员鱼皮19 分钟前
斯坦福大学竟然开了个 AI 编程课?!我已经学上了
人工智能·ai编程
星浩AI1 小时前
Skill 的核心要素与渐进式加载架构——如何设计一个生产可用的 Skill?
人工智能·agent
树獭非懒1 小时前
告别繁琐多端开发:DivKit 带你玩转 Server-Driven UI!
android·前端·人工智能
阿尔的代码屋1 小时前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
小小小怪兽1 小时前
🔨聊一聊Skills
人工智能·agent
穿过生命散发芬芳1 小时前
OpenClaw:开启OpenCloudOS 操作系统智能运维初体验
人工智能·aigc
老金带你玩AI2 小时前
Claude Code自动记忆来了!配合老金三层记忆系统全开源!加强Plus!
人工智能
Halo咯咯2 小时前
无限免费 OpenClaw:接入本地模型后,你的 AI Agent 就可以 24 小时自动干活(Mac Mini 可用)
人工智能
NAGNIP14 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab15 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯