news 2026/8/31 10:18:50

大模型面试高频考点全拆解:从Transformer到RAG的完整准备框架

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大模型面试高频考点全拆解:从Transformer到RAG的完整准备框架

“大模型面经”“100题”“99%通过率”——这类标题你最近一定刷到过不少。坦白说,把题目背完并不能保证拿到 offer,真正拉开差距的是你能不能把“原理、训练、部署、应用”串成一条线,并且用项目经历说服面试官。

这篇文章不承诺“刷完就通过”,但会给你一套比题单更值钱的准备框架:先讲大模型面试的考察逻辑,再按高频考点拆解 Transformer、微调、推理部署、RAG/Agent 四大块,最后落到简历撰写和投递全流程。读完你可以直接照着梳理自己的知识树和项目文档。

1. 大模型面试到底在考什么

很多人准备大模型岗位面试,第一反应是去搜“面试100题”。但如果你只背题,不建立知识结构,面试官多追问一句“为什么这样设计”就会露馅。

大模型岗位面试和传统后端面试有明显区别。后端面试考的是“你用过什么框架、踩过什么坑”,大模型面试考的是“你是否理解模型内部发生了什么,以及能不能把模型真正跑起来服务业务”。

1.1 三类面试官的考察重心

面试官大致分三类,考察侧重点完全不同:

面试官类型考察重点典型问题方向
算法/研究型模型原理、训练机制、论文复现Attention 公式、RLHF、位置编码、loss 设计
工程落地型部署、推理优化、稳定性、成本精度选型、显存估算、vLLM 加速、量化原理
业务应用型场景理解、RAG、Agent、Prompt 工程怎么设计知识库问答、工具调用怎么保证可靠

很多求职者只准备了算法方向,结果面试官是工程团队,问的全是“FP16 和 BF16 有什么区别”“7B 模型要多少显存”,这就很容易冷场。

1.2 高频考点地图

综合各厂大模型相关岗位的公开面经,高频考点大致分布在六个模块:

  • 基础原理:Transformer、自注意力、位置编码、KV Cache、GPT 系列演进、RLHF。
  • 训练微调:预训练与 SFT 的区别、LoRA/QLoRA、P-Tuning、数据构造、灾难性遗忘。
  • 推理部署:精度问题(FP32/FP16/BF16)、量化、vLLM、ollama、流式输出、显存估算。
  • 应用工程:RAG 流程、向量数据库、Agent、Function Calling、Prompt 优化。
  • 评估与安全:模型评估指标、幻觉问题、越狱防护、数据隐私。
  • 项目经历:简历上的项目是不是自己做的、技术选型理由、效果指标。

把这张地图打印出来,对照自己薄弱的地方逐项补,比收集一百道题更有效。

1.3 面试准备的正确姿势

面试准备要形成“面经收集 → 知识归类 → 动手验证 → 口头复述”的循环。看到一个题目,不要直接看答案,先自己试答,再去跑一段最小代码验证原理。比如“KV Cache 到底省了什么”,你可以写一个 100 行的小脚本对比有无 KV Cache 的计算量,理解立刻不一样。

接下来的章节,我会把高频题目按这个思路拆开讲,并且给出可以直接运行的代码或配置示例。

2. 高频原理题:从 Transformer 到注意力机制

2.1 Attention 是怎么算出来的

在 Transformer 中,每个输入 token 会生成三个向量:Query、Key、Value。Attention 的本质是“根据 Query 和所有 Key 的匹配程度,对 Value 做加权求和”。

公式是:

Attention(Q, K, V) = softmax(Q * K^T / sqrt(dk)) * V

这里有一个高频追问点:为什么要除以sqrt(dk)

如果dk很大,Q * K^T的点积值会很大,softmax 会进入梯度极小区域,导致训练不稳定。除以sqrt(dk)可以把点积的方差拉回接近 1 的量级,让梯度更稳定。

2.2 为什么需要位置编码

自注意力本身是“无序”的。它计算 token 两两之间的相关性时,完全不考虑谁先谁后。为了建模语言顺序,必须在输入中加入位置信息。

常见方案有三种:

  • 绝对位置编码:把 token 位置编号编码进 embedding,如正弦位置编码。
  • 相对位置编码:建模两个 token 之间的相对距离,如 T5 的 Relative Bias。
  • 旋转位置编码 RoPE:把位置信息通过旋转矩阵注入 Q/K 向量,是目前主流大模型最常用的方案。

面试如果只答“Transformer 没有位置信息,所以要加位置编码”,只是及格分。能说出 RoPE 的核心思想,会更加分。

2.3 KV Cache 的作用

KV Cache 是推理优化里最基础的概念。生成第 N 个 token 时,前面的 token 对应的 Key 和 Value 已经算过了,不需要重新计算,把它们缓存起来就叫 KV Cache。

面试官常问:KV Cache 是省显存还是省计算?

答案是主要省重复计算,但代价是增加显存占用。随着序列变长,KV Cache 占用会线性增长,这也是长文本推理显存吃紧的关键原因之一。很多推理框架做 PagedAttention、缓存复用、量化 KV Cache,都是为了缓解这个问题。

2.4 实现一个最小注意力计算

下面是一个最简单的 scaled dot-product attention 实现,可以在本地跑通:

import torch import torch.nn.functional as F def scaled_dot_product_attention(query, key, value, mask=None): """ query: [batch, heads, seq_len, dk] key: [batch, heads, seq_len, dk] value: [batch, heads, seq_len, dv] """ d_k = query.size(-1) scores = torch.matmul(query, key.transpose(-2, -1)) / (d_k ** 0.5) if mask is not None: scores = scores.masked_fill(mask == 0, float("-inf")) weights = F.softmax(scores, dim=-1) return torch.matmul(weights, value) if __name__ == "__main__": batch, heads, seq_len, d_k = 1, 4, 8, 64 q = torch.randn(batch, heads, seq_len, d_k) k = torch.randn(batch, heads, seq_len, d_k) v = torch.randn(batch, heads, seq_len, d_k) out = scaled_dot_product_attention(q, k, v) print("output shape:", out.shape)

你可以把 mask 参数换成因果 mask,观察生成模型训练时为什么每个 token 只能看到前面的 token。

3. 大模型训练与微调:从 SFT 到 LoRA

3.1 面试官最常问的训练问题

训练相关题目是算法岗和工程岗都会问的模块。常见问题包括:

  • 预训练和 SFT 有什么区别?
  • SFT 训练数据怎么构造?
  • 全参数微调和 LoRA 的区别?
  • LoRA 为什么能减少显存?rank 怎么设置?
  • 微调之后模型“变傻”了怎么办?

预训练的目标是让模型学会语言规律,SFT 的目标是让模型学会按人类期望的方式回答。两者数据规模、学习率、训练轮数都不同。SFT 数据量通常几万到几十万条即可,但质量要求很高,需要覆盖目标场景的真实问题。

3.2 LoRA 的显存优势

LoRA 的核心思想是冻结原始模型权重,在旁路插入低秩矩阵来模拟权重更新。训练时只更新这部分参数,大幅减少需要保存梯度的参数量。

用一个粗糙但直观的计算来解释:7B 模型全参数微调,每个参数都需要保存梯度,再加上优化器状态,显存需求往往要几十 GB。而 LoRA 只更新几百万到几千万参数,显存需求大幅下降,普通消费级显卡也能跑起来。

关于 rank 的设置,没有一个万能值。r=8r=16是常见的起点,任务简单或数据量少时用小 rank,任务复杂且数据充足时可以适当加大。更大的 rank 不一定带来更好的效果,反而可能过拟合。

3.3 LoRA 微调最小配置与代码

使用 Hugging Face 的peft库可以快速跑通 LoRA:

from transformers import AutoModelForCausalLM, AutoTokenizer from peft import LoraConfig, get_peft_model, TaskType model_name = "Qwen/Qwen2.5-7B-Instruct" base_model = AutoModelForCausalLM.from_pretrained( model_name, torch_dtype="auto", device_map="auto" ) lora_config = LoraConfig( task_type=TaskType.CAUSAL_LM, r=8, lora_alpha=32, lora_dropout=0.1, target_modules=["q_proj", "v_proj"], ) model = get_peft_model(base_model, lora_config) model.print_trainable_parameters()

这里的关键配置项:

  • r:低秩矩阵的秩,决定新增参数量。
  • lora_alpha:LoRA 缩放系数,实际缩放比例是lora_alpha / r
  • target_modules:需要插入 LoRA 的模块,常见选择是q_projv_proj,也可以覆盖所有线性层。

运行后会看到可训练参数量远小于全量参数,这就是 LoRA 显存占用的优势来源。

3.4 微调失败的排查思路

很多人在微调时遇到两个典型问题:loss 不下降、微调后模型通用能力变差。

loss 不下降,首先要检查数据集是否太脏,包括空文本、重复文本、标签错位。其次检查学习率,SFT 的初始学习率通常比预训练小 1 到 2 个数量级,比如 1e-5 到 2e-5。

微调后模型“变傻”,通常是因为 SFT 数据太单一,覆盖不到通用场景。补救方式是在数据集里混合一定比例的通用对话数据,也叫“通用能力保持数据”。这个比例没有固定标准,一般根据任务难度调整,建议从 5% 到 20% 之间做实验。

4. 大模型部署与推理优化:精度、量化与 vLLM

部署和推理优化是 2026 年大模型岗位面试中权重最高的模块之一。原因很简单:大部分公司不会从零训练大模型,而是基于开源模型做微调和私有化部署。能不能把模型跑起来、跑得快、跑得省,是工程团队最关心的事。

4.1 FP32 / FP16 / BF16 精度问题

先说结论:训练和推理对精度的要求不同,主流选择也不同。

精度位宽数值范围适用场景显存占用
FP3232 位训练基准、调试
FP1616 位中等,小数值易溢出部分训练和推理
BF1616 位与 FP32 接近,尾数少大模型训练主力
INT88 位推理量化
INT44 位很小推理量化、本地部署极低

面试经常会问:为什么训练大模型偏好 BF16 而不是 FP16?

因为 BF16 的指数位与 FP32 相同,动态范围大,不容易出现梯度溢出。FP16 尾数精度高,但数值范围小,大模型训练时很容易在反向传播中出现下溢或上溢。

你可以在本地跑一个简单的数值验证:

import torch fp16_value = torch.tensor(100000.0, dtype=torch.float16) bf16_value = torch.tensor(100000.0, dtype=torch.bfloat16) print("fp16:", fp16_value) print("bf16:", bf16_value) print("fp16 * 1000:", fp16_value * 1000) print("bf16 * 1000:", bf16_value * 1000)

运行后你会发现 FP16 在乘大数时容易出现inf,而 BF16 表现更稳定。

4.2 量化:INT8 / INT4 原理与分类

量化是把高精度权重用低精度表示,从而减少显存占用和计算量。面试常问两种量化方式:

  • PTQ(训练后量化):在模型训练完成后,用少量校准数据推算量化参数,不需要重新训练,速度快,但可能有一定精度损失。
  • QAT(量化感知训练):在训练过程中模拟量化误差,让模型权重适应低精度表示,精度损失更小,但成本更高。

实际工程中,PTQ 是常态。比如用bitsandbytes加载 4-bit 模型,或者用 AWQ、GPTQ 做离线量化。

4.3 vLLM 与 PagedAttention

vLLM 是目前最常用的开源推理服务框架,面试官可能会追问它为什么比原生 Hugging Face 推理快。

关键原因是 PagedAttention。类似于操作系统管理内存的分页机制,PagedAttention 把 KV Cache 分成固定大小的块来管理,减少显存碎片,并支持共享前缀,从而提升并发吞吐和长序列处理能力。

实际部署一个模型时,可以通过一行命令启动 OpenAI 兼容的服务:

vllm serve Qwen/Qwen2.5-7B-Instruct \ --tensor-parallel-size 1 \ --max-model-len 8192 \ --gpu-memory-utilization 0.9

参数说明:

  • --tensor-parallel-size:使用多张显卡时的张量并行度。
  • --max-model-len:最大上下文长度,会影响 KV Cache 预留空间。
  • --gpu-memory-utilization:控制显存利用率上限,避免 OOM。

4.4 Ollama 本地部署私有大模型

本地部署大模型是很多中小团队和个人的首选,Ollama 以“安装简单、开箱即用”著称,很适合在面试中作为项目底座来聊。

部署一个开源模型的整个过程只需要两条命令:

ollama pull qwen2.5:7b ollama run qwen2.5:7b

拉取完成后,Ollama 会启动一个本地服务,默认监听11434端口。你可以通过 REST API 调用:

curl http://localhost:11434/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "qwen2.5:7b", "messages": [{"role": "user", "content": "用一句话解释什么是大模型"}] }'

注意,Ollama 的 API 不是所有版本都原生兼容 OpenAI 格式,使用前建议查看当前版本的接口文档。不过整体趋势是越来越多的本地推理服务开始兼容 OpenAI 接口,这也降低了应用层接入成本。

4.5 显存估算方法

面试官经常给出一个模型参数规模,让你估算推理需要多少显存。

估算公式可以这样拆:模型权重显存加上 KV Cache 显存,再乘以工程冗余系数。

def estimate_memory(model_size_b, precision_bytes=2, context_len=4096, layers=32, kv_heads=8, head_dim=128, overhead=1.2): # 权重显存 weight_mem = model_size_b * 1e9 * precision_bytes / 1024**3 # GB # KV Cache 显存(简化估算) block_size = 2 * layers * kv_heads * head_dim * precision_bytes kv_mem = context_len * block_size / 1024**3 # GB total = (weight_mem + kv_mem) * overhead return total print(estimate_memory(7))

这个估算很粗糙,但足够用来判断“7B 模型在 16GB 显存上能不能跑”。实际部署时,还要考虑激活值、框架自身开销等因素。

5. RAG 与 Agent:大模型应用层的高频考点

应用层题目经常出现在二面和三面,尤其是做业务应用的公司。面试官会给你一个业务场景,比如“企业内部知识库问答”“客服自动化”,然后让你设计方案。

5.1 RAG 为什么是必备知识点

RAG(检索增强生成)是当前大模型落地最成熟的技术路线。它的核心价值是:让模型在生成时能参考外部知识,减少幻觉,并且知识可以随时更新,不需要重新训练。

面试常问:RAG 和微调怎么选?

一个可复用的回答框架:

  • 知识变化频率高、需要实时更新:优先 RAG。
  • 需要改变模型行为风格、输出格式、专业术语:优先微调。
  • 两者可以结合:先微调让模型适应任务,再用 RAG 补充领域知识。

5.2 RAG 最小流程实现

RAG 的完整链路是:文档加载 → 文本切分 → 向量化 → 存储 → 检索 → 重排 → 生成。

下面是一个精简伪代码,用来串起整个流程:

# 伪代码:展示 RAG 最小流程 from langchain_community.document_loaders import TextLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain_huggingface import HuggingFaceEmbeddings from langchain_community.vectorstores import FAISS # 1. 加载文档 loader = TextLoader("docs/qa.txt") documents = loader.load() # 2. 切分文本 splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50) chunks = splitter.split_documents(documents) # 3. 向量化并存储 embedding = HuggingFaceEmbeddings(model_name="BAAI/bge-small-zh-v1.5") vectorstore = FAISS.from_documents(chunks, embedding) # 4. 检索 query = "公司年假政策是什么?" retrieved_docs = vectorstore.similarity_search(query, k=3) # 5. 构造 Prompt 并交给大模型 context = "\n\n".join([doc.page_content for doc in retrieved_docs]) prompt = f"请根据以下资料回答问题:\n\n{context}\n\n问题:{query}"

这里每一步都可以深挖。比如为什么chunk_size=500、为什么要有chunk_overlap,面试官追问时,你要能答出“切分过大导致检索噪声,切分过小导致上下文不完整,overlap 是为了保持段落语义连贯”。

5.3 Agent 与 Function Calling

Agent 是另一个高频话题。面试官会问:Agent 和普通对话有什么区别?Agent 怎么调用外部工具?怎么避免 Agent 死循环?

Agent 的核心是“让模型能够规划行动、调用工具、观察结果并决定下一步”。Function Calling 是实现工具调用的常见方式:模型输出一个结构化参数,系统解析后调用真实函数。

一个简单的 Function Calling 示例:

{ "name": "get_weather", "description": "获取指定城市的天气信息", "parameters": { "type": "object", "properties": { "city": {"type": "string", "description": "城市名称"} }, "required": ["city"] } }

实际面试中,建议把表达重心放在“工具定义是否清晰、结果如何反馈给模型、出现错误如何处理”这三个点上。比如模型调用了不存在的工具,系统应该返回一个可读的错误信息,让模型有机会重新规划,而不是直接崩溃。

5.4 面试回答“RAG 还是微调”的得分话术

低分回答:RAG 便宜,微调贵。

高分回答思路:先给判断标准,再给实际案例。

“我一般按三个维度判断。第一,知识是否需要高频更新,如果是,选 RAG。第二,是否需要改变模型的表达风格或领域术语,如果是,选微调。第三,两者并不互斥,我最近做的一个项目是先微调让模型适应客服语气,再用 RAG 接入最新产品手册,效果比单独用任何一种都好。”

这种回答既展示了知识面,又体现了工程经验。

6. 简历怎么写才能通过初筛

前面所有技术准备,最终都要通过简历和面试表达出来。简历环节最容易出现两个问题:一是堆砌名词,二是有项目无成果。

6.1 技术简历的底层逻辑

筛选简历的人想看到三件事:

  1. 你做过和岗位相关的事情。
  2. 你在这个事情里有清晰的技术选型和落地成果。
  3. 你的成果可量化、可验证。

不要写“精通大模型”,而是写“基于 Qwen2.5 搭建了私有大模型问答系统,使用 LoRA 微调解决了领域术语识别问题,最终专业问答准确率提升了若干百分点”。

这里有两个原则:

  • 数字要真实,没有数据就写清楚“指标提升待完整评测”。
  • 技术栈要匹配岗位要求,不要为了凑关键词把没做过的东西写上去。

6.2 一份有竞争力的项目描述模板

项目经历可以按这个模板写:

项目名称:基于大模型的中文法律知识问答系统 项目周期:2025.09 - 2025.12 个人职责:负责模型微调、RAG 链路搭建和部署优化 核心工作: 1. 以 Qwen2.5-7B-Instruct 为基座,构造 2 万条法律领域 SFT 数据,使用 LoRA 完成参数高效微调; 2. 基于向量数据库构建 RAG 检索链路,实现回答内容可溯源; 3. 使用 vLLM 部署推理服务,对比原生 Transformers 推理,验证了吞吐提升效果; 4. 项目代码和评估报告已整理到 GitHub。 技术栈:Python、PyTorch、transformers、peft、vLLM、FAISS、Ollama

这段描述的价值在于:每个工作点都能对应一个面试追问。面试官问“数据怎么构造”“为什么选 LoRA”“FAISS 和 pgvector 怎么选”,你都有东西可以展开。

6.3 投递渠道与流程节奏

投递渠道优先级建议是:内推 > 公司官方招聘官网 > 主流招聘平台。

全流程通常是:

简历筛选 -> 笔试/测评 -> 一轮技术面 -> 二轮技术面 -> 交叉/主管面 -> HR面 -> offer沟通

笔试阶段很可能包含算法题和机器学习基础题,所以 LeetCode 刷题和必要的 ML 基础都不能完全放下。技术面二轮往往更偏向项目深挖,你要能把简历里每个细节讲清。

7. 面试全流程模拟与答题方法

7.1 四轮面试常见结构

面试阶段时长考察重点应对策略
技术一面40-60 分钟基础原理、编码能力先把概念框架讲清楚,再写代码
技术二面40-60 分钟项目深度、系统设计用 STAR 逻辑讲项目,突出冲突和取舍
主管面30-45 分钟软素质、业务思维多谈业务价值,少谈技术炫技
HR 面15-30 分钟稳定性、薪资预期保持真诚,展示学习能力和稳定性

7.2 答题方法论:先结论后展开

面试答题最忌讳上来就背一段书。推荐用“结论 + 理由 + 例子”的结构。

例如被问“为什么选择 RAG?”:

  1. 先给结论:因为业务知识更新快,RAG 能在不改动模型参数的情况下接入最新内容。
  2. 再给技术理由:RAG 通过检索外部知识为模型提供上下文,减少幻觉,并且支持知识增量更新。
  3. 最后给例子:我在法律问答项目中接入最新法规库,检索链路返回原文,模型回答可溯源。

这种结构让面试官很容易抓住你的重点,也方便他继续追问。

7.3 遇到不会的题怎么办

不要硬编,也不要直接说“不会”。比较得体的处理方式是:

  1. 承认这部分没有深入实践过。
  2. 基于已有知识做合理推断。
  3. 表达学习意愿。

比如说:“这个问题我之前没有在工程里用过,不过基于我对 Transformer 的理解,我推测它和 KV Cache 的显存管理有关,我后续会去补一下这一块的源码。”

这种回答方式比沉默或乱猜要好得多。

7.4 反问环节这样问更加分

面试官一般会问“你有什么想问我的”,这是加分机会。可以问:

  • 团队现在对大模型技术栈的选型是什么?
  • 新同学入职之后主要接手哪类项目?
  • 团队目前在推理成本优化上做到了什么程度?

这些问题能让面试官觉得你关注实际工作,而不是只想要一份 offer。

8. 常见问题与避坑指南

问题现象可能原因排查方式解决方案
背了很多题,面试时依然讲不清没有建立知识树,问题之间是孤立的自己模拟面试,录音回听按本文的六模块整理知识树,每个知识点准备3分钟口头讲解
简历写“精通大模型”,被追问就崩项目不够真实,细节撑不住找朋友模拟深挖简历把项目里的技术选型、失败经历、效果数据全部补充完整
微调损失下降但效果差数据集质量低或指标错误检查数据样本,增加评测集清洗数据,构造更贴近真实应用的评测集
vLLM 启动后 OOMmax-model-len 设置过大查看启动日志和显存监控降低max-model-lengpu-memory-utilization
本地部署大模型后响应速度慢未使用推理加速框架对比原版推理和 vLLM 推理的时间引入 vLLM,打开 continuous batching 特性
只知道 RAG 流程,不能处理失败情况缺乏错误处理经验构造坏数据,观察检索和生成的问题加入检索结果数量监控、空结果兜底逻辑、重排序环节

避开这些坑,比多刷 50 道题更有效。

9. 总结与后续学习方向

回到开头那句话,刷完一百题并不能保证通过面试。真正有价值的准备方式是:以“原理 → 训练 → 部署 → 应用 → 表达”为骨架,把高频考点做成自己的知识树,再通过实际项目或开源 Demo 把每一个知识节点验证一遍。

如果你时间有限,优先补三块:LoRA 微调的最小代码示例、本地部署大模型并用 vLLM 加速、RAG 全流程的工程实现。这三个能力最容易在面试中被量化考察,也最容易迁移到实际业务里。

后续学习方向建议按需深入:想做算法研究就多看 RLHF 和模型架构源码;想做工程落地就多研究推理优化、量化、高并发服务和成本控制;想做应用开发就多研究 RAG、Agent、评估体系和少样本学习。

面试本质上是“把一件事讲清楚”的能力。大模型领域变化很快,2026 年的面试题和 2024 年已经有很多不同,但面试官想要的人一直是同一种:既能理解原理,也能动手落地,还能把方案讲明白。你不需要真的刷完一百题,只需要顺着这条线,把每一个核心知识点都变成自己的东西。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 10:17:56

Claude API工程前置课:从边界认知到稳定构建

如果你正在准备 Claude Certified Architect 这类偏架构向的认证,或者只是想把 Claude API 从“调通了”变成“用好了”,第一课其实不是急着去背模型文档,而是先把 API 运行时的各种边界搞清楚。我在协助团队做 API 集成时最常看到的场景是&a…

作者头像 李华
网站建设 2026/8/31 10:16:53

OpenAI回收Atlas设备:开发者云端迁移与Codex实践指南

Open AI 最近有一个动作值得所有关注 AI 开发工具的人留意: 正式回收 Atlas 设备 。从交付到回收,中间隔了 297 天。这个时间节点本身就是一个信号——Open AI 的产品重心,正在从“给开发者一台本地设备”转向“把能力全部收回到云端”。 …

作者头像 李华
网站建设 2026/8/31 10:14:02

Agent Skills实战:用OpenCode搭建可控的AI自动化工作流

Agent Skills 这个词最近在 AI 编程工具圈出现频率很高。简单说,它是给 AI Agent 预先准备的一组“岗位说明书 工具包”,让 Agent 在特定任务上不只靠模型本身的通用能力,而是按照固定流程和资源完成任务。OpenCode 是一个面向终端和编辑器的…

作者头像 李华
网站建设 2026/8/31 10:12:07

服务器证书被换了?用curl的公钥钉扎把这道防线焊死

服务器证书被换了?用curl的公钥钉扎把这道防线焊死 【免费下载链接】curl A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, MQTTS, PO…

作者头像 李华