魔搭社区 测试AI案例故障

大模型真正进行推理、生成文本 的核心逻辑,我给你逐行通俗、完整、无死角解释,让你彻底看懂每一步在做什么。

逐行代码解释

python 复制代码
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)

1. 作用

把你的输入文本 → 转换成模型能直接接收的张量格式 ,并放到和模型一样的设备上(GPU/CPU)。

拆解

  • tokenizer([text])

    • 把输入文字切成 token,再转成数字 ID
    • 加 [] 是为了传入一个列表,让模型接收 batch 格式(必须这样写)
  • return_tensors="pt"

    • 返回 PyTorch 张量(tensor)
    • 大模型只吃张量,不吃普通列表
  • .to(model.device)

    • 把数据放到模型所在的设备
    • 模型在 GPU → 数据也去 GPU
    • 模型在 CPU → 数据也去 CPU
    • 避免设备不匹配报错

python 复制代码
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768
)

2. 作用

让模型开始生成文本!

这是最核心的一行:模型根据你的输入,开始续写/回答。

拆解

  • **model_inputs

    • 把分词后的 input_ids 和 attention_mask 解包传给模型

    • 等价于:

      python 复制代码
      model.generate(input_ids=..., attention_mask=...)
  • max_new_tokens=32768

    • 模型最多生成 32768 个 token
    • 1 token ≈ 0.7 个中文字符
    • 32768 ≈ 2万多字超长文本
    • 这是 Qwen3 支持的最大上下文长度

python 复制代码
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()

3. 作用

从模型输出中,只截取【模型新生成的内容】

去掉你输入的原文,只保留回答部分!

超级关键拆解

  • generated_ids[0]

    • 取第 1 条结果(因为我们只输入了 1 条文本)
  • len(model_inputs.input_ids[0])

    • 你输入文本的长度(多少个 token)
  • [len(...):]

    • 切片:从输入结束的位置开始截取
    • 只保留模型生成的新内容
    • 这一步非常重要!否则输出会包含你的问题
  • .tolist()

    • 把张量转成普通 Python 列表
    • 方便后续解码成文字

用一句话总结整段逻辑

  1. 把你的文字转成模型能看懂的数字
  2. 模型根据数字生成新的数字(回答)
  3. 只截取模型新生成的数字,去掉你的输入

完整流程图示

复制代码
你的文字 → tokenizer → 数字张量 → 模型生成 → 全部数字(包含输入)→ 切片去掉输入 → 只保留回答数字 → 最后解码成文字

最常见的配套代码(你一定会用到)

python 复制代码
# 把生成的数字 ID 转回文字
response = tokenizer.decode(output_ids, skip_special_tokens=True)
print(response)

总结

  1. model_inputs:把输入文本转为模型能用的张量,并放到正确设备
  2. model.generate():让模型生成文本,max_new_tokens 控制最大长度
  3. output_ids = ...[len(...):]:只提取模型生成的回答,去掉输入原文
相关推荐
库拉大叔2 分钟前
从 0 到 1 做一部 AI 漫剧,知漫剧完整制作流程
人工智能·aigc
Omics Pro3 分钟前
之江实验室NAR|虚拟细胞3阶段训练范式
数据库·人工智能·算法·机器学习·自然语言处理
Thomas.Sir5 分钟前
第26课:工业零部件外观缺陷检测系统:从学术Demo到产线工程的重构实战
pytorch·ai
AIGC小尼15 分钟前
8G 显存零基础本地部署 AI 漫剧全流程|ComfyUI+Wan2.2+FFmpeg 离线成片完整方案(含代码 / 指令 / 排坑)
人工智能·ffmpeg·php·comfyui·ai漫剧
悟天特斯16 分钟前
AI驱动的楼宇节能:从“经验省电“到“算法能效“的进化之路
人工智能·物联网
破无差17 分钟前
人工智能训练师(三级)理论知识复习题-KimiK3的参考答案
人工智能
网络毒刘20 分钟前
AtomGit Actions + AI 评审草稿:PR 描述自动生成与安全敏感词门禁示例
人工智能·安全
ai_xiaogui20 分钟前
PanelAI 1.1.1重磅更新:秒级安装脚本优化 + 无公网IP算力节点组网,私有化AI管理平台全面升级
人工智能·网络协议·tcp/ip·api聚合管理·开发者ai一键部署·ai底层架构解析·ai应用快速变现
wflynn24 分钟前
语言判别增强多语言语音模型的语言学习能力
人工智能·ai
neocheng_52225 分钟前
自学、培训、项目还是认证?HR 学习 AI 的四种路径如何组合
人工智能