- 博客(865)
- 资源 (152)
- 收藏
- 关注
原创 MCP协议的核心机制和交互过程
stdio 传输用于本地通信,即客户端和服务器在同一台机器上运行,主机应用程序将服务器作为子进程启动,并通过向其标准输入(stdin)写入和从其标准输出(stdout)读出的方式与之通信。SSE也是HTTP和SSE,是远程传输的MCP,因此MCP的Client和Server可以在不同的机器上运行。最近的MCP的更新“streamable http”方式,允许servers在需要时动态升级SSE到streamable http的方式,从而提供了更大的灵活性。不需要回应的单向信息。
2025-05-16 21:27:11
118
原创 使用unsloth对Qwen3在本地进行微调
本文介绍了如何在本地使用unsloth和huggingface对Qwen3-14B模型进行微调。首先,通过unsloth加载模型,并配置LoRA进行微调,指定了低秩矩阵和微调层等参数。接着,加载了两种数据集:包含推理的OpenMathReasoning-mini和不包含推理的FineTome-100k,并对数据进行了预处理。然后,使用SFTTrainer配置训练参数,如学习率、批量大小等,并启动训练过程。随着训练损失的减小,模型逐渐优化。最后,微调后的模型可用于测试。整个过程展示了从模型加载、数据准备到训练
2025-05-16 11:27:26
30
原创 Agentic Pattern :Planning Pattern (基于Ollama、langchain、qwen3的代码实现)
负责规划的 LLM 会将复杂的任务分解成一个动态的子任务列表,然后委托给专门的工作agents(通常使用工具使用)来执行。这种模式试图通过创建初始计划来解决需要多步骤推理的复杂问题。一个 “协调器 ”或 “合成器 ”LLM 会收集来自 “工人 ”的结果,反思总体目标是否已经实现,然后合成最终输出,或在必要时启动重新规划步骤。这就减少了任何一次 LLM 调用的认知负荷,提高了推理质量,最大限度地减少了错误,并允许对工作流程进行动态调整。与路由的主要区别在于,规划器生成的是多步骤计划,而不是选择单一的下一步。
2025-05-14 10:22:59
35
原创 Agentic Pattern :Reflection(基于Ollama、langchain、qwen3的代码实现)
这是一个agent的模式,agent会对自己的输出进行评估,并利用反馈不断改进自己的响应。这种模式也被称为 “Evaluator-Optimizer”,并使用自我修正循环。然后,第二个 LLM 步骤(甚至是具有不同提示的同一 LLM)充当反思者或评估者,根据要求或期望质量对初始输出进行批判。这种批评(反馈)会被反馈回去,促使 LLM 产生改进后的输出。如此循环往复,直到评估者确认要求得到满足或实现了令人满意的输出。如下是一个基于Ollama、langchain、qwen3的代码实现例子。
2025-05-14 10:18:18
21
原创 Agentic Pattern :Parallelization(基于Ollama、langchain、qwen3的代码实现)
这个是一个workflow的Agent 模式,一个任务被分解成多个独立的子任务,由多个 LLM 同时处理,并将其输出汇总。这种模式使用了任务并发功能。所有分支完成后,它们的单独结果会被收集起来并传递给最后的聚合 LLM,后者会将它们合成为最终响应。如果子任务之间不相互依赖,这就能改善延迟,或通过多数表决或生成不同选项等技术提高质量。参考https://www.philschmid.de/agentic-pattern?如下是一个基于Ollama、langchain、qwen3的代码实现例子。
2025-05-14 10:15:28
717
原创 Agentic Pattern :Routing(基于Ollama、langchain、qwen3的代码实现)
这个是一个workflow的Agent 模式,有一个 LLM 充当路由器,对用户输入进行分类,并将其导向最合适的专门任务或 LLM。这种模式实现了关注点的分离,可以单独优化各个下游任务(使用专门的提示、不同的模型或特定的工具)。它通过对较简单的任务使用较小的模型来提高效率,并有可能降低成本。当任务被路由时,选定的代理将 “接管 ”完成任务的责任。参考https://www.philschmid.de/agentic-pattern?如下是一个基于Ollama、langchain、qwen3的代码实现例子。
2025-05-14 10:12:13
123
原创 Agentic Pattern :Prompt Chaining(基于Ollama、langchain、qwen3的代码实现)
这个是一个workflow的Agente 模式,一个 LLM 调用的输出依次进入下一个 LLM 调用的输入。这种模式将任务分解为一系列固定的步骤。每一步都由一个 LLM 调用处理前一步LLM处理的输出。这种模式适用于可清晰分解为可预测的顺序子任务的任务。如下是一个基于Ollama、langchain、qwen3的代码实现例子。
2025-05-13 18:04:48
29
原创 LLM 采样参数超详细解释
temperature控制输出文本的随机性和创造性,通过调整模型预测的概率分布。通过缩放模型输出的logits(未归一化的概率)来改变softmax函数的概率分布。temperature设置越低(大概0.1到0.5),越能得到确定性的预测,temperature设置较高高(大于1.0),越不能得到确定性的预测。temperature的Greedy Decode是0,永远选择概率最高的预测,但是这并不是说设置0就是永远输出相同的预测,最高概率的预测有可能不止一个。
2025-05-09 17:25:00
172
原创 LoRA微调的一些术语:“q_proj“, “k_proj“, “v_proj“, “o_proj“, “gate_proj“, “up_proj“, “down_proj“
列“q_proj”、“k_proj”、“v_proj”、“o_proj”、“gate_proj”、“up_proj”、“down_proj”指的是使用LoRA进行微调涉及到的一些components(或者projections)。
2025-05-08 10:56:27
44
原创 LLM的min_p 参数详
Min-p是一种基于截断的随机解码方法,它试图通过引入动态阈值p来解决top-p采样的某些局限性。pmaxmaxv∈VPxtv∣x1xt−1pscaledpbase∗pmaxpmaxpscaledv∈VmaxPxtv∣x1xt−1pbase∗pmax在生成文本时,模型会为每个可能的 token 计算一个概率分布。
2025-05-06 16:11:32
41
原创 AI Agent万能的:什么时候AI Agent可能会好于传统的自动化?
构建AI Agent 并不是选择越大的Model越好,而是应该建立一个AI Agent基线,然后使用目前最好的模型集中全部力量实现AI Agent完成目标任务,接下来使用较小的模型替换现在最好的模型然后评价是否满足基线,能力是否满足要求。传统的自动化系统都是基于确定性的规则处理问题的,但是AI Agent却可以处理更复杂的流程。尽可能的最大化单AI Agent的能力,除非遇见了复杂的处理逻辑需要prompt中加入各种逻辑处理,或者需要大量的tool调用的时候,有可能需要多个AI Agent进行处理。
2025-04-28 10:45:37
289
原创 每一个LLM的使用者都应该能了解的超参详细说明和推荐配置
LLM的Hyper Parameters是一种配置项,可以使用它们来影响或控制训练 LLM 的过程。
2025-04-21 15:22:10
50
原创 LLM友好的Jacoco代码覆盖报告读取MCP服务
地址:https://github.com/crisschan/mcp-jacoco-reporterMCP-JaCoCo是一个服务器工具,可将JaCoCo代码覆盖率报告转换为适合大型语言模型(LLM)的格式,使AI驱动的分析更加简单高效。
2025-04-09 10:53:27
327
原创 大模型格式化输出的几种方法
在开发一些和LLM相关的应用的时候,如何从大模型的反馈中拿到结构化的输出数据是非常重要的,那么本文就记录几种常用的方法。
2025-04-08 15:36:24
235
原创 为大模型提供读取Allure报告的能力,MCP-Allure server
功能:读取 Allure 测试报告并返回 JSON 格式的数据输入参数report_dir:Allure HTML 测试报告的路径返回值字符串,格式化的 JSON 数据,示例结构如下:],],"steps": [],"steps": [
2025-03-25 10:08:58
354
原创 让大模型可以轻松读取代码仓库:MCP-Repo2LLM
功能:处理并返回 GitLab 仓库某个分支的代码内容,以文本形式输出输入参数repo_url(字符串):GitLab 仓库的 URLbranch(字符串):分支名称,默认值为 master返回值(字符串):仓库中的所有项目信息和结构,以文本形式呈现。
2025-03-25 10:04:29
511
原创 Allure 报告数据存储结构
Allure的报告的下有一个data目录,里面存储了全部展示的数据。data目录下面有两种类型的文件一类是csv,一类是json,两个类型的文件中同名的文件数据是一样的,只是不同的展示方法。我们就按照json格式的数据介绍(这里面allure不同版本之间有可能有稍微的差异,但是整体改动不大)。PS:如果要打开本地的allure的html报告,allure open我们就按照html格式报告的菜单顺序进行介绍。
2025-03-24 10:58:24
528
原创 llms.txt文件
目前llms.txt并没有收到普板的认可,并且在网站根目录创建。目前推荐创建llms.txt文件就可网站下面的robots.txt一样(robots.txt是告诉搜索引擎网站中那些部分可以被爬虫访问),llms.txt 是一套专门给大语言模型使用的,用于收集的网站中简洁干净的纯文本信息以帮助大模型在推理时使用网站的标准化提案。下面是mcp官网下的llms.txt,可以提供参考(https://modelcontextprotocol.io/llms-full.txt)
2025-03-10 11:01:42
344
原创 Python开发MCP Client
全部例子只是MCP Client访问MCP Server的过程,那么这样其实就失去了MCP协议的创建的初衷,和大模型集成后才能发挥MCP最大的作用。
2025-03-04 13:59:58
1807
原创 Python 的 Docstrings(文档字符串)
Python 的文档字符串(Docstrings)是一种特殊的字符串,用于为模块、类、函数或方法提供文档说明。它是通过在定义的开头使用三引号(“”" 或 ‘’')书写的字符串。文档字符串的主要目的是描述代码的功能、使用方法以及其他必要信息,以便开发者(包括自己和他人)能够理解和使用代码。Python 的文档字符串特性在语言中有着重要地位,常用于生成自动化文档、IDE 支持和代码自省。
2025-03-03 13:41:04
368
原创 Python的MCP Server开发实战
这是一个入门级的教程主要讲解一下MCP Server的开发,主要是用官网的例子以及MCP Python SDK。
2025-03-03 13:40:19
3828
1
原创 Python的类型注解:Type Hints
Python 的类型注解(Type Hints)是指在 Python 代码中为变量、函数参数、返回值等添加类型信息的一种语法特性。它是在 Python 3.5 中引入的(通过 PEP 484),目的是提高代码的可读性、可维护性,并方便静态类型检查工具(如 mypy)分析代码的正确性。类型注解并不会影响 Python 的运行时行为,因为 Python 是一门动态类型语言,类型注解只是“提示”性质的元数据,解释器在运行时会忽略它们。开发者可以用它们来表达代码的意图,或者通过工具在开发阶段捕获潜在的类型错误。
2025-03-03 10:40:43
458
原创 大模型的UI自动化:Cline 使用Playwright MCP Server完成测试
MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。最近越来越受到大家的追捧,也有很多网站开始提供全部的MCP Server、MCP Client等内容,推荐https://www.pulsemcp.com/,这个网站收录的MCP Server比较全面,也包含了MCP Client的介绍。
2025-02-24 13:47:45
2924
原创 AI IDE:Windsurf 配置Playwright的MCP Server
MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。
2025-02-17 17:20:41
1905
原创 AI Test Reporter:让大模型帮你分析失败的Playwright测试报告
AI Test Reporter是一个借助大模型的能力帮我们分析失败的测试用例的工具,它能够分析失败的测试用例,并给出一些分析告诉我们为什么会失败以及有可能怎么修复的一些建议。该工具可以轻松集成到现有的工具平台中,像GitHub、Slack等,通过标准化的 CTRF 报告与所有主要测试框架兼容,并且会将AI的分析结果存入CTRF JSON报告中,方便以后其他工具的读取和展示。
2025-02-14 18:02:42
97
原创 为平台工程而生的测试报告整合方法:CTRF报告
CTRF 提供了一种JSON格式的测试报告的Schema,从而定义了一种统一格式的测试报告。网址https://github.com/ctrf-io,如下例子所示。"tool": {},},"tests": [],CTRF解决了不同测试工具之间的测试报告的差异性,这也为不同阶段建立使用不同测试工具完成测试后,进行综合的结果分析奠定了基础。results对象是单词测试的核心组件,包含了tool、summary、tests、environment、extra属性。NameType必须简介。
2025-02-13 17:33:15
69
原创 知识蒸馏:大模型智慧的传承与精炼
在学校DeepSeek的技术文章,对于其中的“基于 Qwen 和 Llama 从 DeepSeek-R1 中提炼出的六个稠密模型(1.5B、7B、 8B、14B、32B、70B参数规模)”,有点困惑所以详细的学习和研究了一下。
2025-01-22 17:08:53
950
原创 借助Claude实现Playwright的自动化(MCP Server)
MCP Server自己开发也是可以的,现在也有很多开箱即用的MCP Server,可以在https://github.com/modelcontextprotocol/servers中查找。
2025-01-14 15:18:19
2357
原创 async 是异步编程的关键字
在 Python 中,async 是异步编程的关键字,用于定义异步函数或异步代码块。异步编程是一种并发编程的方式,用来提高程序的执行效率,尤其是在处理 I/O 操作(如网络请求、文件读写)时。
2025-01-08 15:07:56
313
原创 LLM的MCP协议:初识MCP,搭建第一个MCP Server
MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。
2025-01-03 17:13:30
15769
原创 体验Cursor一段时间后的感受和技巧
总体用了一段时间后,发现最初的一些认识也是并不全面,当然现在的认识也不是很全面。没有代码基础的人还很难使用大模型直接开(这里说一些小工具除外)。这里我们说要有一些好的输入,其实这里也可以是一些你想要参考的功能,这样就模拟你想要的交互功能复制一个应用。无论如何都应该试一试,等真正用了一段时间,就会熟悉并理解这个人机Pair的微妙之处。
2024-12-31 17:44:57
1667
原创 RAG基准性能测试:CRAG
CRAG是Comprehensive RAG Benchmark,一个丰全面的事实问题解答基准,主要是为了推动RAG的发展而设计的。CRAG除去提供了一套Question&Answer配对的数据以外,还提供模拟网络和知识图谱搜索的API。CRAG的设计囊括了五个领域和八个问题类别的各种问题,反映了从流行到长尾的不同实体流行度(我也不知道他为什么这么描述,from popular to long-tail),以及从数年到数秒的时间动态。数据集的详细描述。
2024-12-17 15:54:51
161
原创 使用LLM的IDE一段时间后的体会
其次,我从头到尾review一下代码,发现需求变更越多,代码写的越不好,越不是一个好设计,这就是一个战术性编程(这个名字来自茹老师的新书《软件设计的哲学》的典范,也可以说LLM的辅助编程就是战术龙卷风,但是这对于一个工程来说并不是好事,战略性编程才是更长治久安的选择,但是如果这些永远都是LLM主导维护呢?从零开始使用Windsurf完成了一个web的小东西,总体来说很爽,从零开始一行代码也没写过,全部是在聊天,但是这聊天也不是像产品经理和开发工程师聊天一样,而是更像一个结对编程的导航员的感觉。
2024-12-04 15:16:00
446
为集成LLM到测试平台提供更便捷的方式:为讯飞的LLM星火创建接入LangChain类(全部源代码)
2023-11-02
个人版强制更新破解Xshell5的nslicense.dll
2019-01-02
ACIS CAD开发类库9
2009-06-10
ACIS CAD开发类库8
2009-06-10
ACIS--CAD开发类库7
2009-06-10
ACIS--CAD开发类库6
2009-06-10
ACIS--CAD开发类库
2009-06-10
ACIS--CAD开发类库4
2009-06-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人