Deepseek使用与Prompt工程

AI大模型(如GPT、LLaMA、Claude等)的核心原理及API使用涉及多个技术层面。以下从基本原理、关键技术和实践API调用三个维度展开说明:

AI大模型基本原理

  1. 核心架构(以GPT为例)

Transformer结构:基于自注意力机制(Self-Attention),每个token可并行处理
训练目标:通过海量文本的“下一个词预测”任务(如Google的BERT采用MLM不同)

以上架构是用来不断生成下一个词,但是往往是顺着prompt说话的捧哏的角色,回答往往差强人意。大模型之所以能够给出优秀的令人满意的回答,训练过程离不开reward model。

  1. 关键技术指标

    参数 GPT-3 LLaMA-2-70B Claude-3
    参数量 1750亿 700亿 未公开
    训练数据量 3000亿token 2万亿token 超5万亿token
    上下文窗口 2048token 4096token 200Ktoken
  2. 推理过程特殊设计
    温度参数(Temperature):控制生成随机性(0.1=保守,1.0=创意)
    Top-p采样:仅从概率累积超过p阈值的候选词中选取(如p=0.9)
    停止标记:预设<|endoftext|>等标记终止生成

主流大模型API使用指南

  1. OpenAI API(GPT系列)
1
2
3
4
5
6
7
8
9
10
11
12
13
import openai

response = openai.ChatCompletion.create(
model="gpt-4-turbo",
messages=[
{"role": "system", "content": "你是一位科技作家"},
{"role": "user", "content": "解释量子计算核心原理"}
],
temperature=0.7,
max_tokens=500
)
print(response.choices[0].message.content)

关键参数说明:

frequency_penalty(-2.02.0):抑制重复用词
presence_penalty(-2.0
2.0):鼓励提及新概念
logit_bias:手动调整特定token概率

  1. Anthropic Claude API
1
2
3
4
5
6
7
8
9
10
from anthropic import Anthropic

client = Anthropic(api_key="your_key")
response = client.messages.create(
model="claude-3-opus-20240229",
max_tokens=1000,
system="用中文回答,风格通俗易懂",
messages=[{"role": "user", "content": "如何理解Transformer的QKV矩阵?"}]
)

差异化功能:

支持10万+长上下文记忆
内置XML标记解析能力

  1. 本地部署方案(LLaMA2为例)
1
2
3
4
5
6
7
8
9
10
# 使用HuggingFace Transformers
from transformers import AutoTokenizer, AutoModelForCausalLM

model = AutoModelForCausalLM.from_pretrained("meta-llama/Llama-2-7b-chat-hf")
tokenizer = AutoTokenizer.from_pretrained("meta-llama/Llama-2-7b-chat-hf")

inputs = tokenizer("解释注意力机制", return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=200)
print(tokenizer.decode(outputs[0]))

API调优实践技巧

  1. 提示工程(Prompt Engineering)
    思维链(Chain-of-Thought)
    用户:计算(125 + 378) × 4
    系统:请逐步思考:
    1. 先计算括号内:125+378=503
    2. 再乘以4:503×4=2012
      最终答案:2012

少样本学习(Few-shot):

1
2
3
4
5
messages=[
{"role": "user", "content": "北京->上海"},
{"role": "assistant", "content": "方向:东南"},
{"role": "user", "content": "乌鲁木齐->广州"}
]
  1. 成本控制方案

    策略 效果 适用场景
    流式传输(stream=True) 减少响应延迟 长文本生成
    限制max_tokens 直接控制费用 精准问答场景
    缓存机制 避免重复请求 高频相似查询
  2. 异常处理建议

1
2
3
4
5
6
7
try:
response = openai.ChatCompletion.create(...)
except openai.error.RateLimitError:
print("请求超限,需实现回退逻辑")
except openai.error.InvalidRequestError as e:
print(f"输入异常:{e.user_message}")