让AI从话痨变成老中医:连续对话的实现秘密

小红书爆款文案的秘密武器:5个Prompt公式让AI写出高互动种草文 本文揭秘了利用AI高效创作小红书爆款种草文的5个核心Prompt公式。通过精准的结构化指令,将AI从基础写手转变为深谙平台网感与用户心理的爆款制造机,有效提升文案互动与转化效率。文章详细拆解了适用于不同产品类型的Prompt设计心法,助你掌握AI内容创作的秘密武器。 阅读详情

git地址:https://github.com/lovelyqun/MCP.git

当我想让AI像医生一样问诊时,发现它总是忘记前面说啥,或者问完一个问题就停不下来。

传统AI交互模式:

🧑‍💻 “我肚子疼。”
🤖 “好的,肚子疼可能是…,需要进一步检查…,建议你做…检查 巴拉巴拉…”

看似说了很多,其实啥也没说。🤦‍♂️

显然不行。所以我做了个实验——让AI学会"连续思考",像真正的专家一样有条理地引导整个对话。今天就来聊聊这个有趣的Sequential Thinking实现。

🔄 老式AI vs 新式AI:差别在哪?

老式AI:像个"金鱼"🐟

// 天气查询 - 典型的金鱼记忆
server.tool("get_weather", {city}, async ({city}) => {
  const weather = generateWeatherData(city);
  return formatWeatherInfo(weather); // 说完就忘,下次重来
});

金鱼特色:

  • 七秒记忆,每次都是新朋友
  • 问一句答一句,绝不多想
  • 简单粗暴,适合查个天气啥的

新式AI:像个"老中医"👨‍⚕️

// 医生助手 - 步步为营,环环相扣
server.tool("assistant-doctor", {sessionId, thought, action}, async (params) => {
  const session = loadOrCreateSession(params); // 翻出病历本
  
  if (session.waitingForPatientResponse) {
    return "WAITING_FOR_USER_INPUT"; // 闭嘴,听病人说话
  }
  
  // 下一步该问啥,心里有数
  const nextStep = getNextDiagnosisStep(session);
  return formatGuidedQuestion(nextStep);
});

老中医特色:

  • 记性好,你昨天说啥都记得
  • 有章法,按套路出牌
  • 会主动,该问啥就问啥

🏥 让AI变身老中医:实战案例解析

看病这事儿,是个技术活。医生不会上来就给你开药,而是要:

  1. 👂 听你描述哪里不舒服(主诉)
  2. 🔍 追问细节:“怎么个疼法?” (症状详询)
  3. 📋 了解病史:“以前得过啥病?”(病史采集)
  4. 🩺 看看检查结果(体格检查)
  5. 🧠 综合分析,给出诊断

这是一套标准动作,不能乱。传统AI就像个莽撞的实习医生🩺👶,想到哪说到哪。而我们的Sequential Thinking MCP就是要让AI变身老中医👨‍⚕️✨,有条不紊地问诊。

三大法宝,让AI变聪明

法宝一:给AI一个"问诊清单"📋
function getMedicalDiagnosisSteps() {
  return [
    {
      type: "question",
      content: "今天哪里不舒服?啥时候开始的?",
      waitForResponse: true,
      responseKey: "chief_complaint"
    },
    {
      type: "question", 
      content: "具体咋疼的?刺痛还是胀痛?",
      waitForResponse: true,
      responseKey: "symptom_details"
    },
    // ... 还有好几步,一步都不能少
  ];
}
法宝二:给AI一个"病例本"📝
const session = {
  id: "medical_xxx",           // 病历号
  problem: "肩膀疼",           // 主要毛病
  currentStep: 3,              // 现在问到第几个问题了
  totalSteps: 7,               // 总共要问几个
  waitingForPatientResponse: true,  // 是不是在等病人说话
  consultationSteps: [],       // 完整的问诊记录
  patientResponses: {}         // 病人说过的话,分类记好
};
法宝三:教AI啥时候该说话,啥时候该闭嘴
// 简单粗暴的逻辑
if (病人刚说完话 && 有新信息) {
  把话记到小本本上();
  翻到下一页();
  
  if (下一个问题需要病人回答) {
    return "闭嘴,等病人说话";
  }
} else {
  继续按流程走();
}

🧠 揭秘:三个小技巧让AI变得有耐心

技巧一:教AI学会"打住!等等!"

你知道最难的是什么吗?让AI闭嘴!传统AI就像话痨,一开口就停不下来。但老中医问诊时,问完一个问题就得等病人回答,不能自说自话。

// 这招太绝了:给AI下个"禁言令"
if (session.waitingForPatientResponse) {
  return `
⚠️ 暂停!现在轮到病人说话了
👨‍⚕️ 刚才问的是: ${session.currentQuestion}
💡 AI你别抢话,等等真人回答
--- 此处必须停止,等待真实用户输入 ---
  `;
}

这招咋管用的:

  • AI看到这个"禁言令",立马闭嘴
  • 病人说完话,才能继续下一轮
  • 简单粗暴,但效果拔群

技巧二:给AI配个"超级大脑"

还记得那个七秒记忆的金鱼吗?我们得给AI换个脑子!这个新脑子不但记性好,还很有条理。

// AI的新大脑长这样:
const session = {
  id: "medical_xxx",
  currentStep: 3,                    // 问到第几个问题了
  totalSteps: 7,                     // 总共要问几个
  waitingForPatientResponse: true,   // 现在是不是该病人说话
  consultationSteps: [               // 完整的聊天记录
    {
      step: 1,
      content: "哪里不舒服?",
      patientResponse: "肩膀疼,疼了一个月了",
      timestamp: "2025-01-01T10:00:00Z"
    },
    // ... 每一轮对话都记得清清楚楚
  ],
  patientResponses: {                // 重要信息分类整理
    "chief_complaint": "肩膀疼,疼了一个月了",
    "symptom_details": "胀痛,上班时特别严重"
  }
};

这脑子有多厉害:

  • 每次对话都会翻出完整的病历
  • 病人说过的每句话都记着
  • 能根据前面的信息,越问越深入

技巧三:给AI写个"作弊小抄"

最后一招是关键!就像考试时偷偷带小抄一样,我们给AI准备了一个问诊流程表,按着这个来,保准不会乱套。

// AI的问诊小抄
function getMedicalDiagnosisSteps() {
  return [
    {
      type: "question",
      content: "哪里不舒服?啥时候开始的?",
      waitForResponse: true,  // 这里要等病人回答
      responseKey: "chief_complaint"
    },
    {
      type: "question", 
      content: "具体咋疼的?什么情况下疼得厉害?",
      waitForResponse: true,  // 这里也要等
      responseKey: "symptom_details"
    },
    {
      type: "analysis",
      content: "让我琢磨琢磨你这症状...",
      waitForResponse: false  // 这里AI自己分析,不用等
    }
    // ... 照着这个流程一步步来
  ];
}

// AI按小抄办事
function processNextStep(session, userInput) {
  const 当前步骤 = getMedicalDiagnosisSteps()[session.currentStep - 1];
  
  if (需要等病人说话 && 病人刚说了话) {
    记到小本本上(userInput);
    翻页到下一步();
  } else if (该AI自己琢磨了) {
    开始分析();
    继续下一步();
  }
  
  return 问下一个问题();
}

小抄的威力:

  • AI不能胡说八道,必须按流程来
  • 每一步都有明确任务,不会跑偏
  • 自动判断啥时候该闭嘴,啥时候该分析

🛠️ 代码实现:五分钟看懂精髓

怎么注册这个神奇的工具

server.tool(
  "assistant-doctor",           // 工具名,简单粗暴
  "AI老中医问诊助手",          // 描述,一目了然
  {
    problem: "病人主要毛病",    // 比如"肩膀疼"
    thought: "刚才说了啥",      // 病人的回答或AI的分析
    sessionId: "病历号",        // 用来找到对应的聊天记录
    action: "干啥"              // 开始、继续、还是结束
  },
  async (参数) => {
    // 根据不同情况,做不同的事
    switch (参数.action) {
      case 'start':   return 开始问诊(参数.problem);
      case 'continue': return 继续问诊(参数.sessionId, 参数.thought);
      case 'complete': return 结束问诊(参数.sessionId);
    }
  }
);

跟普通工具有啥区别?

普通工具(比如天气查询):

🧑‍💻:"北京天气咋样?"
🤖:"晴天,25度。" // 说完就完事,没有下文 🔚

我们的Sequential Thinking工具:

👨‍⚕️ AI:"哪里不舒服?"
🤒 你:"肩膀疼"
👨‍⚕️ AI:"咋疼的?刺痛还是胀痛?"
🤒 你:"胀痛,上班时厉害"
👨‍⚕️ AI:"那让我再问问你的病史..."
// 一步步深入,像真正的医生 🎯

🎯 这玩意儿到底有啥用?

解决了AI的三大老毛病

  1. 健忘症晚期 🧠🔥

    • 以前:每次对话都要重新介绍自己,累人 😰
    • 现在:AI有了好记性,聊过的都记得 📚✨
  2. 没有章法 🤯

    • 以前:用户得当导演,告诉AI下一步该干啥 🎬👀
    • 现在:AI自己就是导演,按流程办事 🎯📝
  3. 太被动 😴

    • 以前:你不问我不说,典型社恐 🙈
    • 现在:AI会主动问问题,像个话痨(但是有用的话痨)💬✨

还能用在哪些地方?

  • 各种咨询:看病问诊、法律咨询、心理疏导
  • 教学相关:一对一辅导、技能培训、考试评估
  • 商务流程:客户访谈、需求调研、项目策划
  • 决策帮助:风险分析、方案评估、问题诊断

基本上,只要是需要"一步步深入了解"的场景,都能用上这招。

🔮 最后说两句

让AI学会了"耐心" —— 该等你说话时就等着,该自己思考时就思考,不抢话,不乱套。这可比那些话痨AI强多了!

文心一言:AI人工智能领域的创新力量 随着ChatGPT掀起全球大模型热潮,通用人工智能(AGI)的实现路径逐渐清晰——以大语言模型为核心的通用AI系统。解析文心一言的技术创新点(如知识增强、多模态理解);展示其在实际场景中的落地价值;探讨大模型对AI产业的深远影响。本文将按照“技术原理→应用场景→未来趋势”的逻辑展开,先通过生活案例理解核心概念,再用代码示例演示技术落地,最后展望大模型的发展方向。大语言模型(LLM):通过海量文本训练的AI模型,能理解并生成人类语言(类比“装了1000本百科全书的大脑”)。 阅读详情

相关推荐

【头歌实训:逆置顺序表】

根据提示,在右侧编辑器补充函数rev的代码,使用顺序表L的空间就地逆置L。},要求时间复杂度为O(n),空间复杂度为O(1)。第一行为顺序表逆置之前的元素。每个数据后一个空格。第二行为顺序表逆置之后的元素。每个数据后一个空格。本关任务:设计一个算法,将一个顺序表L的元素{a。第一行为顺序表中元素个数n。第二行为空格隔开的n个整数。开始你的任务吧,祝你成功!

guang_Lee的博客 998

虚幻引擎集成大语言模型:构建智能NPC对话系统的架构与实践

大语言模型(LLM)作为自然语言处理的核心技术,通过其强大的上下文理解和生成能力,正在重塑人机交互的范式。其原理基于海量文本数据的预训练与微调,能够根据输入的提示词生成连贯、符合逻辑的文本序列。这一技术价值在于突破了传统规则引擎或有限状态机的限制,为实现开放域、动态的智能交互提供了可能。在游戏开发领域,这直接催生了AI NPC的应用场景,使得非玩家角色能够脱离预设脚本,与玩家进行自然、个性化的对话。本文聚焦于如何将OpenAI等大语言模型深度集成到虚幻引擎中,从架构设计、提示词工程到性能优化,系统阐述构建一

weixin_29009971的博客 285

机械臂学习:视觉引导——绪论

视觉引导 = 定位 + 引导定位:视觉系统定位到待引导的物体引导:视觉系统引导机械臂按需要的轨迹实现一定的工艺流程(过度点:人为指定机械臂的轨迹防止碰撞)(点云匹配:解决位姿估计姿态估计的问题)无序抓取的三个核心技术:3d识别(图中的点云匹配) 抓取方法路径规划(防止机械臂的碰撞,如自身碰撞等)如果只有同一高度的平移和旋转,其实并不需要点云,用单目就可以做,但是如果涉及到物体的倾斜以及高度的变换,那就是单目力所不能及,所以就是第三种情况:平移旋转加垫高。

2303_80018785的博客 4046

AI学习日志——连续对话实现-3(优化连续对话方案)

如图所示:在我设计的智能体的连续对话中,我想将操作步骤日志看作为思维链,将问题和回答结果作为前几次连续对话进行拼接。

m0_65920584的博客 722

Cadence Virtuoso实战:NMOS差分放大器设计与SPICE仿真全解析

本文详细解析了使用Cadence Virtuoso设计NMOS差分放大器并进行SPICE仿真的全流程。从基础设计要点、原理图绘制到工作点分析与性能调优,提供了实用的设计技巧和常见问题解决方案,帮助工程师高效完成模拟集成电路设计。重点介绍了差分放大器的关键参数设置、饱和区优化及版图设计注意事项,适用于ADC、DAC等高性能电路开发。

weixin_28340315的博客 611

无人机蜂群联合指挥作战技术详解

随着人工智能、通信技术、新材料等领域的不断进步,无人机蜂群联合指挥作战技术将迎来更加广阔的发展前景。未来,无人机蜂群将更加智能化、自主化,能够执行更加复杂、精细的作战任务。同时,加强国际合作,共同制定国际规则和标准,将是推动无人机蜂群技术健康发展的重要方向。无人机蜂群技术,是指通过先进的通信技术、自主导航与决策算法,将大量小型、低成本、功能各异的无人机组织成一个高度协同的群体,执行复杂多样的军事任务。2. 通信与数据链:采用高速、低延迟、抗干扰的通信技术,保障群体内无人机间的信息交换。

专注多旋翼、复合翼无人机技术研究,从事低空经济行业。 1546

mcp-sequentialthinking-tools:指导问题解决的智能工具推荐

mcp-sequentialthinking-tools:指导问题解决的智能工具推荐 项目介绍 mcp-sequentialthinking-tools 是一款基于 Model Context Protocol (MCP) 的智能工具推荐服务器,旨在帮助用户在问题解决过程中逐步拆解复杂问题,并提供每个阶段最有效的工具建议。该服务器通过动态思维过程分析,为用户在问题解决的各个步骤中推荐合适的工具,并...

gitblog_00024的博客 910

别再让会议变‘回音壁’:手把手教你调优WebRTC的AEC3回声消除(附实战代码)

本文深入解析WebRTC的AEC3回声消除技术,提供从参数调优到声学环境适配的实战指南。通过诊断回声特征、解剖核心参数(如filter.length_blocks和delay_estimate_smoothing)以及应对特殊场景(如密闭空间与开放办公区),帮助开发者有效解决视频会议中的回声问题,提升语音通信质量。附有实战代码和调试工具,适合需要优化实时通信体验的开发者。

weixin_29220405的博客 172

【免费下载】 mcp-sequential-thinking:结构化思维的利器

mcp-sequential-thinking 是一个基于 Model Context Protocol (MCP) 的服务器,旨在通过定义的阶段促进结构化和逐步的思维过程。这款工具能够帮助用户将复杂问题分解为有序的思维步骤,跟踪思维进程,并生成总结。 ## 项目技术分析 mcp-sequential-thinking 的核心基于 Python 3.10 或更高版本,使用了多种先进的技术和库来

gitblog_00137的博客 1648

Ubuntu20.04下 嵌入式 Qt 开发环境的搭建(适用于Tiny6410)

Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建 目录导航Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建前言1.安装前的准备工作2.安装交叉编译器 前言 这篇文章,主要是基于 Ubuntu19.10版本而写,写此文的初衷,是为了自己使用,因为最近正在以Tiny6410板子做实训,所以也是初学者一枚,只能保证我遇上的问题统统能够解决掉,至于一些没遇上的,欢迎各位看客给我留言,大家一起讨论,一起解决。 注:本文会持续更新 1.安装前的准备工作 环境要求 Linux系统:U

繁臻的小窝 4895

Android13无重力感应系统修改触摸屏跟随屏幕显示旋转方向旋转

在实际产品中设计时会移除重力传感器。当设备缺少重力传感器时,系统无法使用该传感器提供的方向数据来确定屏幕旋转的方向。Android 系统中由于移除重力传感器导致的默认显示方向旋转引起触摸屏与屏幕显示不一致问题,主要是由于缺乏方向检测和触摸坐标的正确转换。通过使用替代传感器(如陀螺仪)、手动配置方向、调整触摸事件坐标和 UI 布局,可以解决这个问题。开发者需要确保在设备没有重力传感器的情况下,能够通过其他方法推测方向,并确保触摸事件和 UI 动作能够正确响应设备的旋转。

weixin_35723192的博客 803

用 LiteLLM 和 模型上下文协议(MCP)打造超灵活的 AI 工具整合:让开发者“一次编码,处处运行”

本文介绍了LiteLLM和模型上下文协议(MCP)两大工具,它们能解决AI模型整合中的接口不统一、成本不可控等问题。LiteLLM作为"AI模型网关",支持100+模型,提供统一接口、智能路由和成本追踪功能;MCP则标准化了模型与工具的交互方式。两者结合可实现:1)模型切换零成本;2)智能成本优化;3)合规安全处理;4)未来扩展无忧。文中还演示了如何用这两个工具快速搭建智能客服系统,强调其可提升开发效率、增强系统稳定性,适用于企业级AI平台等场景。

分享平时的学习心得和笔记 915

基于YOLOv8与UI界面的校园垃圾分类督导系统

YOLO(You Only Look Once)是目前最为广泛使用的目标检测算法之一。它通过一次前向传递即完成目标检测,具有极高的速度与效率。YOLOv8是YOLO系列的最新版本,相比于之前的YOLO版本,YOLOv8在速度、精度、检测能力等方面都有了显著的提升。本项目通过结合YOLOv8模型与UI界面,成功实现了校园垃圾分类督导系统。该系统能够自动识别不同类型的垃圾,并通过UI界面实时展示垃圾分类的结果。

YOLO 337

比特前哨:从“黑盒”到“调参”:一文读懂AI生成背后的秘密与实战

为什么同样一个AI模型,有时候聪明得像个专家,有时候却蠢得像个新手?为什么你让它写诗,它给你写报告;你让它严谨,它却天马行空?这背后,其实是一场关于“概率”与“参数”的奇妙游戏。 本文将带你走进AI生成内容的核心,用最通俗的语言解释Token、温度、Top_p这些“行话”到底在控制什么,同时附上简单易懂的API交互示例,让你不仅能理解原理,还能亲手调教AI,让它更听话。

weixin_51721783的博客 469

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

AI硬件产品怎么做?——情感类AI产品心法

情感类

产品线负责人 948

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

新加坡科技设计大学揭秘:AI实现高效精准推理

新加坡科技设计大学揭秘:AI实现高效精准推理

weixin_49122920的博客 818

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

AI情感陪伴产品技术拆解:大模型原理与工程实现

大语言模型(LLM)的快速发展,让自然语言处理从简单的语义理解走向了具备连续多轮对话、上下文感知与个性化表达的综合能力。基于这种能力,AI角色扮演与情感陪伴应用逐渐兴起,其背后依赖的是提示词工程、对话管理、个性化记忆与多模态交互等技术的组合。本文从技术原理出发,剖析大模型如何通过条件概率生成“理解性”回复,解释角色设定与长期记忆的工程实现机制,并梳理一套完整的AI陪伴应用架构。同时,结合最小可运行Demo的代码示例,展示如何搭建角色引擎、记忆系统与安全过滤层,帮助开发者理解此类产品的核心技术链路与常见工程陷

weixin_34341229的博客 455

上海交通大学团队让AI推理快43.5%的秘密武器

研究团队使用了五个权威的编程评测基准,包括经典的HumanEval(164个手工编写的编程问题)、HumanEval+(在HumanEval基础上扩展了80倍的测试用例)、LiveCodeBench(从竞赛编程平台持续收集的新题目,确保没有被AI训练数据污染)以及LeetCodeDataset(228个高质量的LeetCode题目)。他们发现,在编程推理任务中,那些首词惊喜度高的步骤通常包含以下几类内容:问题分析的关键洞察,算法选择的重要判断,代码实现的核心逻辑,以及错误修正的关键发现。

weixin_49122920的博客 852

【手搓 AI Agent 从 0 到 1】第二课:一句话让 AI 变身任何角色

摘要: 本文讲解如何通过系统提示词(System Prompt)控制AI模型的行为风格,使其扮演不同角色。核心原理是利用messages参数传递角色设定(system角色)和用户问题(user角色),同一模型可切换为编程老师、通俗讲解员或极简回答者等模式。文章提供Python代码示例,展示三种角色对同一问题的差异化回复,并总结4种System Prompt设计模式。配套资源包含10种预设角色模板和进阶调试技巧,帮助开发者快速构建多角色AI助手。(149字) 关键词: 系统提示词、角色切换、AI行为控制、Ol

weixin_37688407的博客 708

一张图片如何装下一个AI角色卡片?SillyTavern制作与玩法全攻略

在SillyTavern里,一个AI角色通常不是几十个散落的配置文件,而是一张平平无奇的图片——这种神奇的载体,就是AI角色卡片。你从朋友那儿收到一张角色立绘,拖进界面就能立刻开聊;你把自己的原创角色导出成图片发出去,对方导入后看到的性格、记忆、开场白全都原封不动。这篇文章不堆术语,我们从"为什么一张图能装下这么多东西"讲起,一路带你做出第一张属于自己的AI角色卡片。 先看一个真实场景:你在社区

gitblog_00990的博客 443

AI写小说用ChatGPT还是专用工具?蛙趣拼文 vs 通用聊天AI全维度对比

通用聊天AI(ChatGPT/Kimi/DeepSeek)能写小说,但不适合写长篇小说——写到30章左右就会因为缺乏项目管理而出现角色崩塌、伏笔丢失问题。蛙趣拼文是专门的AI创作工作台(VS Code插件),自带千章大纲、五层角色管理、伏笔系统、向量记忆和素材库,把长篇小说当项目管。结论:写短篇随便用啥都行,写长篇(5万字以上)建议专用工具。蛙趣拼文开放式接入、不绑定消费、不卖字数不卖AI,内置几十个国内模型免费使用,DeepSeek写一章才几分钱。

489

从零开始:构建你的专属Agent工具调用系统,从底层理解,大模型入门到精通,收藏这篇就足够了!

今天,我们就从零开始,不是使用框架直接调用,而是使用提示词的方式一步步构建一个完整的工具调用系统。相信我,这比你想象的更简单,也更有趣!

Y525698136的博客 1309

【重磅消息】OpenAI双巨头首次详解GPT-5,不是下一代GPT,终极形态是AI研究员

摘要: OpenAI推出的GPT-5标志着AI从“答题助手”向“自主研究员”的跨越,不仅能回答问题,还能独立提出新假设、推导结论甚至撰写论文。其融合了快速响应与深度推理能力,并可自主调整思考节奏。通过“驻留研究员计划”,AI与人类科学家协作推进研究,开启“人机共研”新时代。尽管质疑AI创新本质的声音存在,但其在数学、物理等领域的突破已展现潜力。未来科研或演变为“人类+AI”协同模式,重新定义创造力边界。面对AI的“主见”,人类需思考:如何在技术洪流中守护不可替代的感知与灵感?

qq_43552933的博客 1015

没吃透 Function Calling?难怪你不理解 AI Agent 为何非来不可!

想象一下,大语言模型(LLM)就像一个超级聪明的图书管理员,能从海量的知识库里翻出各种信息,写出流畅的文章,甚至跟你聊得热火朝天。但它有个问题:它只会“说”,不会“做”。比如,你问它今天天气怎么样,它可能会凭着训练数据胡乱猜一通,却没法真的去查实时的天气预报。 为了解决这个问题,RAG 技术应运而生。它就像给图书管理员配了个搜索引擎,能从外部资料里捞出最新信息,让回答更靠谱。但即便如此,这种组合还是停留在“知识输出”的层面,缺乏主动性和行动力。 这时候,AI Agent 就像一位全能助手登场了。它不仅能

datian1234的博客 1083

GPT-5高阶玩法大揭秘:AI智能体时代来临,从聊天到实战一网打尽!

过去,我们用AI,像是使用一把瑞士军刀。你说一个指令,它执行一个动作。而GPT-5的目标,是成为你的“自动导航汽车”——你设定目的地,它自己规划路线、应对路况、直至抵达终点。这就是 “智能体工作流”(Agentic Workflow) —— GPT-5最核心的进化。在官方指南中,OpenAI花了大量篇幅教开发者如何“管理”这位新员工。

Trb201013的博客 818
上一篇: 揭秘Sequential Thinking MCP:AI如何学会“分步思考“?
下一篇: 用了 Claude Code 半年,我发现这个功能比 Copilot 还香
wakangda
博客等级 码龄8年 446粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值