# W3AI | 前端 × AI 学习资料库(教程 · Agents · RAG · 最佳实践) > 前端 × AI 学习资料库:教程、Agents、Skill 与最佳实践。 ## Table of Contents ### Other - [Agents 与工具调用](/agents.md) - [Embedding 到底在做什么:从文本到向量](/basics/what-is-embedding.md): 从文本到向量的完整链路讲起:维度是什么、为什么语义相近的向量夹角小、余弦相似度怎么算,并说清它为什么比关键词匹配强又不完全可靠,附常见模型维度与批量调用实践。 - [Function Calling:让模型真的能调你的函数](/agents/function-calling.md): 面向前端工程师讲清 Function Calling(函数调用)的完整链路:工具定义怎么写、参数描述为什么最关键、并行调用与多轮循环怎么跑、错误结果为什么要回填,以及哪些危险操作必须人工确认。 - [MCP 入门:模型上下文协议解决了什么问题](/agents/mcp.md): 面向前端工程师讲清 MCP(模型上下文协议):M×N 的工具适配爆炸、它统一的是「工具怎么被描述和调用」而不是模型内部、host/client/server 三个角色、最小 server 的 JSON 配置、stdio 与远程两种接法,以及它和 Function Calling 的关系与安全边界。 - [RAG 与知识库](/rag.md) - [RAG 切片策略:文档怎么切才不掉链子](/rag/chunking.md): 从检索单元的本质出发,讲清固定长度切分、滑动窗口重叠、按 Markdown 结构切分的取舍,并给出表格与代码的特殊处理方式和切片粒度的评估方法。 - [Token 与上下文窗口:模型为什么会「忘事」](/basics/token-context-window.md): 从 token 的切分原理讲到上下文窗口的额度分配,说清中文为什么更费 token、模型为什么会「忘事」,并给前端工程师一套可落地的长度估算与超窗排查思路。 - [Vercel AI SDK 上手:前端接大模型的标准姿势](/frontend-ai/ai-sdk.md): 面向前端工程师的 Vercel AI SDK 上手科普:讲清裸写 fetch 流式解析要重复造哪些轮子、AI SDK 抽象掉了哪几层、服务端与客户端怎么分工、最小可读的前后端示例怎么写,以及换模型和代价(依赖、版本漂移、黑盒)的真实体验。 - [关于本站](/about.md) - [最佳实践](/practices.md) - [分类](/categories.md) - [前端 AI 开发](/frontend-ai.md) - [基础概念](/basics.md) - [大模型流式输出:SSE 在前端怎么接](/frontend-ai/streaming-sse.md): 面向前端工程师的大模型流式输出科普:为什么模型逐 token 生成、SSE 的 data 行与空行分隔协议、为什么该用 fetch 而不是 EventSource,以及断字处理、[DONE] 结束标记、用 AbortController 停止生成与断线降级。 - [归档](/archives.md) - [提示工程模式:从角色设定到结构化输出](/practices/prompt-patterns.md): 把 prompt 当成写给同事的接口文档:角色设定真正固定了什么、指令怎么具体到格式与长度、示例为何比讲道理有效、思维链的适用边界、结构化输出的可靠做法与兜底,以及改 prompt 之前为什么必须先有评测集。 - [标签](/tags.md) - [混合检索:BM25 和向量召回的结果怎么合并](/rag/hybrid-search.md): 纯向量和纯 BM25 各有盲区,混合检索把两路结果合起来,但两边的分数量纲不同不能直接相加。这篇讲 RRF 的公式与 k 的取值、Elasticsearch 与 Weaviate 的默认参数、跨编码器重排的位置,以及我踩过的几个坑。