AI Coding LSP

rag系列文章目录


文章目录


前言

AI coding越来越火,相关的工具也也越来越成熟,程序员好像距离失业越来越近了。但是好的工具还是要学习的,这里介绍下LSP,主要之前有些AI coding工具,让人很困惑,比如仅仅支持某些语言,LSP这个工具就是让AI更好的理解代码的,能够更好地进行AI辅助编程。


一、LSP简介

LSP即(Language Server Protocol),是一种标准化协议,用于:在 编辑器(Client) 与 语言服务器(Server) 之间,通过 JSON-RPC 通信,提供语言相关的智能能力。

比如在IDEA编辑器里面,代码补全、跳转到定义、查找引用、类型提示、实时错误诊断、重构(重命名、提取方法等)这些功能,都是LSP提供的。LSP的核心思想是:将"语言理解能力"从编辑器中剥离,集中到语言服务器中。

编辑器:只负责 UI 与用户交互

Language Server:负责解析代码、构建 AST、类型推导、语义分析

当你在编辑器中:

  • 输入代码 → 自动补全
  • Cmd + 点击 → 跳转定义
  • 重命名方法 → 全局安全替换

背后流程是:

  • 编辑器发送请求(如 textDocument/definition)
  • LSP 基于 AST / 符号表计算结果
  • 返回精确位置或修改建议

二、AI coding为何需要LSP

大模型在代码上的天然局限

  • 不具备真实符号表
  • 不理解项目级依赖关系
  • 容易编造不存在的类 / 方法
  • 对大型工程改动风险极高

有LSP,大模型就能够补齐短板

大模型短板 LSP 补充
不知道真实 API 提供真实符号
改动影响不可控 提供引用关系
无法验证正确性 提供诊断结果

三、claude code + LSP

Claude Code 是一个 Code Agent,负责:

  • 任务理解
  • 修改规划
  • 多步执行
  • 校验与回滚

而不是一个语言分析器。claude code是如何使用LSP的呢?

bash 复制代码
Claude Code(Agent / Planner)
        │
        │ 需要代码语义
        ▼
 本地开发环境(VSCode / CLI)
        │
        ▼
 Language Server(jdtls / gopls / pyright)

Claude Code 实际利用的 LSP 信息,如文件结构(类 / 方法)、函数真实定义、调用与引用关系、编译 / 诊断结果。这些信息用于:安全重构、避免 hallucination、验证修改是否破坏工程,这也是 Claude Code 比"网页版 Claude 写代码"稳定得多的原因。

四、LSP vs MCP

MCP 是一种:大模型调用外部工具的标准协议,用于让模型安全、结构化地调用:shell、git、数据库、API、云服务。

MCP和LSP的区别如下:

维度 LSP MCP
关注对象 代码语义 外部工具
提供能力 事实、结构、类型 动作、执行
是否确定性 取决于工具
是否代码专用
典型用途 理解代码 操作系统 / 服务

LSP:感知层(代码世界)

MCP:执行层(外部世界)

LLM / Agent:决策层


总结

LSP 是代码世界的"真相来源",MCP 是行动的"工具接口",Claude Code 是把两者组织起来完成复杂任务的 Agent。有了LSP的加持,能够让AI coding能力更强。

相关推荐
数智工坊9 分钟前
【Mask2Former论文阅读】:基于掩码注意力的通用分割Transformer,大一统全景/实例/语义分割
论文阅读·深度学习·transformer
一切皆是因缘际会16 分钟前
AI数字分身的底层原理:破解意识、自我与人格复刻的核心难题
大数据·人工智能·ai·架构
翔云12345620 分钟前
vLLM全解析:定义、用途与竞品对比
人工智能·ai·大模型
ASKED_201943 分钟前
KDD Cup 2026 腾讯算法广告大赛赛题解读: UNI-REC (统一序列建模与特征交叉)
人工智能
fpcc1 小时前
AI和大模型——Fine-tuning
人工智能·深度学习
爱问的艾文1 小时前
八周带你手搓AI应用-Day4-赋予你的AI“记忆力”
人工智能
ACP广源盛139246256731 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
向量引擎1 小时前
向量引擎接入 GPT Image 2 和 deepseek v4:一个 api key 把热门模型串起来,开发者终于不用深夜修接口了
人工智能·gpt·计算机视觉·aigc·api·ai编程·key
努力努力再努力FFF1 小时前
医生对AI辅助诊断感兴趣,作为临床人员该怎么了解和学习?
人工智能·学习
Yzzz-F2 小时前
Problem - 2205D - Codeforces
算法