<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>AI on FF的实验笔记</title>
    <link>http://blog.memcd.com/tags/ai/</link>
    <description>Recent content in AI on FF的实验笔记</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>(c) 1998 - 2026</copyright>
    <lastBuildDate>Mon, 18 May 2026 09:44:32 +0800</lastBuildDate>
    <atom:link href="http://blog.memcd.com/tags/ai/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Anthropic：当AI开始自我构建</title>
      <link>http://blog.memcd.com/posts/ai/2026-0605-when-ai-builds-itself/</link>
      <pubDate>Mon, 18 May 2026 09:44:32 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0605-when-ai-builds-itself/</guid>
      <description>&lt;h1 id=&#34;anthropic当ai开始自我构建&#34;&gt;Anthropic：当AI开始自我构建&lt;/h1&gt;&#xA;&lt;p&gt;就在今天凌晨，Anthropic发了一篇文章。名字叫《When AI builds itself》。&lt;/p&gt;&#xA;&lt;p&gt;我写代码的原初动力，就是因为可以通过编程构建一个自己完全掌控的世界。2023年LLM突然普及，从最开始只能复制粘贴代码片段，到通过Agent可以独立完成整个功能点的开发，再到把数小时的活儿委托给别的代理并行进行，这条路只用了短短三年时间。&lt;/p&gt;&#xA;&lt;p&gt;而当工具开始构建工具、模型开始训练模型，我们习以为常的那个&amp;quot;由人来推动每一步进展&amp;quot;的世界，正处在一个前所未有的巨变前夜。身处这样的时代，我们到底该把自己放在什么位置？&lt;/p&gt;&#xA;&lt;p&gt;以下是原文&lt;/p&gt;&#xA;&lt;h2 id=&#34;anthropic当ai开始自我构建-1&#34;&gt;Anthropic：当AI开始自我构建&lt;/h2&gt;&#xA;&lt;p&gt;我们朝着递归自我改进的进展及其影响。&lt;/p&gt;&#xA;&lt;p&gt;在 AI 历史的大部分时间里，人类推动了其发展周期的每一步。但在 Anthropic，我们正在将越来越多的 AI 开发工作委托给 AI 系统本身，这正在加速我们的工作。&lt;/p&gt;&#xA;&lt;p&gt;如果走得足够远，并给予足够的计算资源，这一趋势指向一个能够完全自主设计和开发自己后继者的 AI 系统。这被称为&lt;em&gt;递归自我改进&lt;/em&gt;。我们还没有达到那里，递归自我改进也不是不可避免的。但它可能比大多数机构准备好的时间来得更早。&lt;/p&gt;&#xA;&lt;p&gt;使用公开基准和 Anthropic 内部此前未报告的数据，&lt;a href=&#34;https://www.anthropic.com/institute&#34;&gt;Anthropic Institute&lt;/a&gt; 正在展示 AI 已经在加速 AI 系统的开发。以一个例子为例：今天，Anthropic 工程师平均每个季度交付的代码量是 2021-2025 年的 8 倍。&lt;/p&gt;&#xA;&lt;p&gt;本文讨论的技术趋势表明，AI 系统在未来几年将变得更加有能力。这些趋势具有巨大影响。能够自我构建的 AI 将是技术史上的一次重大发展——它可能在科学、医疗保健等领域为世界带来&lt;a href=&#34;https://www.darioamodei.com/essay/machines-of-loving-grace&#34;&gt;巨大的好处&lt;/a&gt;。但完全的递归自我改进也可能增加人类失去对 AI 系统控制的&lt;a href=&#34;https://www.darioamodei.com/essay/the-adolescence-of-technology&#34;&gt;风险&lt;/a&gt;。如果系统能够完全构建自己的后继者，我们保护它们、监控它们和塑造它们行为的方式都变得更加重要。&lt;/p&gt;&#xA;&lt;h3 id=&#34;20212023&#34;&gt;2021–2023&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;构建第一个 Claude&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;在早期，Anthropic 的工作看起来像任何其他科技公司的工作：人们在笔记本电脑上编写代码和文档。&lt;/p&gt;&#xA;&lt;h3 id=&#34;20232025&#34;&gt;2023–2025&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;聊天机器人&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;人们使用早期聊天机器人来帮助流程的某些部分，比如生成短代码片段并将输出复制到文本编辑器中。&lt;/p&gt;&#xA;&lt;h3 id=&#34;20252026&#34;&gt;2025–2026&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;编码代理&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;随着代理变得更有能力，它们能够自己编写和编辑代码，有时是整个文件。&lt;/p&gt;&#xA;&lt;h3 id=&#34;今天&#34;&gt;今天&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;自主代理&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;代理现在可以自己运行代码，并将数小时的工作委托给其他代理。&lt;/p&gt;&#xA;&lt;h3 id=&#34;20xx&#34;&gt;20XX?&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;关闭循环&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;在未来，代理可能变得足够有能力自己构建和训练模型。如果发生这种情况，Claude 的未来版本可以由 Claude 本身持续改进。&lt;/p&gt;&#xA;&lt;h3 id=&#34;来自外部世界的证据&#34;&gt;来自外部世界的证据&lt;/h3&gt;&#xA;&lt;p&gt;AI 模型改进的速度正在加速。它们能够&lt;a href=&#34;https://metr.org/time-horizons/&#34;&gt;可靠地独立完成&lt;/a&gt;的任务长度大约每四个月翻一番，早期的趋势是每七个月&lt;a href=&#34;https://metr.org/blog/2025-03-19-measuring-ai-ability-to-complete-long-tasks/&#34;&gt;翻一番&lt;/a&gt;。2024 年 3 月，Claude Opus 3 能够完成人类大约需要四分钟的任务。一年后，Claude Sonnet 3.7 处理了大约需要一个半小时的任务。又过了一年，Claude Opus 4.6 处理了 12 小时的任务。¹ 如果这一趋势持续，今年可能进入熟练人员需要几天才能完成的任务范围。到 2027 年，AI 系统可能能够完成需要人几周的任务。&lt;/p&gt;</description>
    </item>
    <item>
      <title>DeepSeek: 实测Think标签到底泄露了什么？</title>
      <link>http://blog.memcd.com/posts/ai/2026-0518-deepseek-think/</link>
      <pubDate>Mon, 18 May 2026 09:44:32 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0518-deepseek-think/</guid>
      <description>&lt;h1 id=&#34;deepseek-实测think标签到底泄露了什么&#34;&gt;DeepSeek: 实测&amp;lt;Think&amp;gt;标签到底泄露了什么？&lt;/h1&gt;&#xA;&lt;p&gt;昨天各个群里都在传DeepSeek的&amp;lt;Think&amp;gt;标签泄露用户对话缓存的信息。&lt;/p&gt;&#xA;&lt;p&gt;马上写了个脚本实测了一下：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-Python&#34; data-lang=&#34;Python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#06287e&#34;&gt;call_deepseek&lt;/span&gt;(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    api_key: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    base_url: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    model: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    question: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    session_id: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    timeout: &lt;span style=&#34;color:#007020&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#40a070&#34;&gt;60&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;) &lt;span style=&#34;color:#666&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#007020&#34;&gt;dict&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    endpoint &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; base_url&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;rstrip(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;/&amp;#34;&lt;/span&gt;) &lt;span style=&#34;color:#666&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;/chat/completions&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    payload &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;model&amp;#34;&lt;/span&gt;: model,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;messages&amp;#34;&lt;/span&gt;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            {&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;role&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;: question},&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;stream&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;False&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;: session_id,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    req &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; request&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;Request(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        endpoint,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        data&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;json&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;dumps(payload)&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;encode(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;utf-8&amp;#34;&lt;/span&gt;),&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        headers&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Authorization&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Bearer &lt;/span&gt;&lt;span style=&#34;color:#70a0d0&#34;&gt;{&lt;/span&gt;api_key&lt;span style=&#34;color:#70a0d0&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Content-Type&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;application/json&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        method&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;POST&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    )&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;with&lt;/span&gt; request&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;urlopen(req, timeout&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;timeout) &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;as&lt;/span&gt; resp:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        charset &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; resp&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;headers&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;get_content_charset() &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;or&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;utf-8&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        body &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; resp&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;read()&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;decode(charset)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;return&lt;/span&gt; json&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;loads(body)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;question传入&amp;quot;&amp;lt;think&amp;gt;&amp;quot;，循环执行100次，数据记录在本地数据库中，然后分析获取的数据，发现内容确实五花八门，很像用户信息缓存，抽样其中10条回答的话题如下：&lt;/p&gt;</description>
    </item>
    <item>
      <title>ClaudeCode和Codex使用DeepSeekV4</title>
      <link>http://blog.memcd.com/posts/ai/2026-0513-cc-use-deepseek/</link>
      <pubDate>Wed, 13 May 2026 22:36:04 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0513-cc-use-deepseek/</guid>
      <description>&lt;h1 id=&#34;claudecode和codex使用deepseekv4&#34;&gt;ClaudeCode和Codex使用DeepSeekV4&lt;/h1&gt;&#xA;&lt;p&gt;最近OpenClaw逐渐降温，大家的关注点似乎都转移到ClaudeCode上去了。AI迭代速度如此之快，一个新产品竟然火不到半年。我从2023年就开始用Claude，当时就觉得Cluade是最好用的AI，GPT只能排第二。当时发现的Claude一大优势就是语文能力特别强，写的小作文水平比chatGPT高多了。今天的Claude更是全方位的领先。虽然这个模型很好用，但是国内的小伙伴们使用Claude总有各种各样的麻烦，其实随着其他大模型的不断进步，现在很多模型都具备了独立完成项目的能力。目前关注度很高的Cluade Code，也是支持使用第三方大模型的，比如新进发布的deepseek-v4-pro。配置方法很容易，只要设置好环境变量再启动Claude就行了：&lt;/p&gt;&#xA;&lt;h2 id=&#34;配置claudecode使用第三方模型&#34;&gt;配置ClaudeCode使用第三方模型&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_BASE_URL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;https://api.deepseek.com/anthropic&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_AUTH_TOKEN&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&amp;lt;你的 DeepSeek API Key&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_MODEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;deepseek-v4-pro&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;1m&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_DEFAULT_OPUS_MODEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;deepseek-v4-pro&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;1m&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_DEFAULT_SONNET_MODEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;deepseek-v4-pro&lt;span style=&#34;color:#666&#34;&gt;[&lt;/span&gt;1m&lt;span style=&#34;color:#666&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;ANTHROPIC_DEFAULT_HAIKU_MODEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;deepseek-v4-flash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;CLAUDE_CODE_SUBAGENT_MODEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;deepseek-v4-flash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;CLAUDE_CODE_EFFORT_LEVEL&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;max&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后启动claude code&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;claude&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;询问&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;❯ 你用的模型是什么&#xA;⏺ 当前使用的是 DeepSeek V4 Pro（上下文窗口 1M tokens）。&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;现在claude就可以使用DeepSeek V4 Pro作为工作大模型了，这样用的话整个claude都是不用梯子就可以工作的，方便很多，而且价格只有Claude Opus的几分之一。&lt;/p&gt;&#xA;&lt;p&gt;如果是Windows的话，把上述变量配置到用户的环境变量里即可（我的电脑/属性/高级/环境变量）。&lt;/p&gt;&#xA;&lt;h2 id=&#34;配置codex使用第三方模型&#34;&gt;配置Codex使用第三方模型&lt;/h2&gt;&#xA;&lt;p&gt;编辑 &lt;code&gt;~/.codex/config.toml&lt;/code&gt; ，填写第三方模型的base_url等参数：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;model_provider&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;OpenAI&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;model&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;gpt-5.5&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;review_model&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;gpt-5.5&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;model_reasoning_effort&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;xhigh&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;disable_response_storage&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;network_access&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;enabled&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;windows_wsl_setup_acknowledged&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;model_context_window&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#40a070&#34;&gt;1000000&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;model_auto_compact_token_limit&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#40a070&#34;&gt;900000&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;[&lt;span style=&#34;&#34;&gt;model_providers.OpenAI&lt;/span&gt;]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;name&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;OpenAI&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;base_url&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;https://api.nange-ai.com&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;wire_api&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;responses&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;&#34;&gt;requires_openai_auth&lt;/span&gt; &lt;span style=&#34;&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;true&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;编辑 &lt;code&gt;~/.codex/auth.json&lt;/code&gt; ，填写OPENAI_API_KEY&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;OPENAI_API_KEY&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;sk-xxxxxxxxxxxxx&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后启动codex，就可以使用第三方模型了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;总结&#34;&gt;总结&lt;/h2&gt;&#xA;&lt;p&gt;Claude Code和Codex均支持使用第三方模型。&#xA;使用第三方模型尤其是国产模型，还可以避免需要魔法的问题。而且第三方模型普遍成本较低。&#xA;但第三方模型也普遍存在Instruction Following做得不够好的问题，建议大家根据自己的需求按需选择。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hermes：微信实时监控菜地，偷菜的人慌了</title>
      <link>http://blog.memcd.com/posts/ai/2026-0506-pi-weixin-camera/</link>
      <pubDate>Wed, 06 May 2026 10:54:58 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0506-pi-weixin-camera/</guid>
      <description>&lt;!-- &#xA;候选标题&#xA;Hermes：使用微信监控菜园偷菜&#xA;Hermes：微信实时监控菜地，偷菜的人慌了&#xA;Hermes：用微信实现菜园实时监控与偷菜告警&#xA;Hermes 项目：微信推送菜园监控，偷菜直接手机通知&#xA;用 Hermes + 微信做菜园防盗系统，IoT 监控战&#xA;Hermes：微信+IoT实时监控菜地，偷菜的人慌了&#xA;--&gt;&#xA;&lt;h1 id=&#34;hermes微信实时监控菜地偷菜的人慌了&#34;&gt;Hermes：微信实时监控菜地，偷菜的人慌了&lt;/h1&gt;&#xA;&lt;p&gt;我家的院子里种了点菜，黄瓜、丝瓜、西红柿，长得虽然经常奇形怪状，但还是经常被路过的人顺手薅走。于是想着，能不能让上一篇文章里&lt;a href=&#34;../2026-0427-raspberry-pi.md/&#34;&gt;那台AI化的树莓派&lt;/a&gt;派上点用场——挂个摄像头盯着菜园，再接一个微信机器人，随时给我汇报菜园的情况，还可以顺便用大模型分析一下有没有人在偷菜。&lt;/p&gt;&#xA;&lt;p&gt;整个方案的链路如下：&lt;/p&gt;&#xA;&lt;pre class=&#34;mermaid&#34;&gt;&#xA;  flowchart LR&#xA;    A[微信] --&amp;gt;|消息| B[Hermes Gateway]&#xA;    B --&amp;gt; C[Hermes Agent]&#xA;    C --&amp;gt;|garden-camera skill| D[rpicam-still]&#xA;    D --&amp;gt;|jpg| E[树莓派摄像头]&#xA;    C --&amp;gt;|vision 分析| F[LLM]&#xA;    F --&amp;gt; C&#xA;    C --&amp;gt;|图片+文字| B&#xA;    B --&amp;gt;|回复| A&#xA;&lt;/pre&gt;&#xA;&#xA;&lt;p&gt;最终效果：在微信里给机器人发一句&amp;quot;看看院子&amp;quot;，几秒钟后收到一张实时照片，外加AI对实时画面的分析汇报。&lt;/p&gt;&#xA;&lt;h2 id=&#34;hermes-是什么&#34;&gt;Hermes 是什么&lt;/h2&gt;&#xA;&lt;p&gt;简单来说，Hermes（众神的信使赫耳墨斯）是小龙虾OpenClaw的平替。&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/nousresearch/hermes-agent&#34;&gt;Hermes&lt;/a&gt; 是 Nous Research 出的一个开源 Agent 框架，名字取自希腊神话中的赫耳墨斯——奥林匹斯十二主神之一，宙斯与迈亚之子，司职商业、旅行、偷窃、畜牧、竞技、演说，也是众神的信使。他行动敏捷，常被描绘为头戴有翼金盔、脚穿带翼凉鞋、手持双蛇盘绕的节杖。罗马神话中对应的是墨丘利（Mercury）。&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;安装-hermes&#34;&gt;安装 Hermes&lt;/h2&gt;&#xA;&lt;p&gt;Hermes 的安装很简单，一行命令：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 默认安装到 $HOME/.hermes&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 也可以通过环境变量 HERMES_HOME 指定安装目录&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;source&lt;/span&gt; ~/.bashrc    &lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 或者 source ~/.zshrc&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hermes              &lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 启动！&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果想装到指定目录：&lt;/p&gt;</description>
    </item>
    <item>
      <title>在树莓派上部署全套AI工作环境</title>
      <link>http://blog.memcd.com/posts/ai/2026-0427-raspberry-pi/</link>
      <pubDate>Mon, 27 Apr 2026 18:26:35 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0427-raspberry-pi/</guid>
      <description>&lt;h1 id=&#34;在树莓派上部署全套ai工作环境&#34;&gt;在树莓派上部署全套AI工作环境&lt;/h1&gt;&#xA;&lt;p&gt;周末翻出来好久不用的树莓派3b，感觉这小设备正好适合跑一个隔离的小龙虾。于是决定把它的环境整个重做一遍，最后实验下来发现效果很好，最终成功部署了如下工具：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;opencode 1.14.24&lt;/li&gt;&#xA;&lt;li&gt;claude code 2.1.119&lt;/li&gt;&#xA;&lt;li&gt;ollama 0.21.3-rc0(deepseek-r1:1.5b)&lt;/li&gt;&#xA;&lt;li&gt;openspec 1.3.1&lt;/li&gt;&#xA;&lt;li&gt;OpenClaw v2026.4.23&lt;/li&gt;&#xA;&lt;li&gt;Hermes Agent v0.12.0 (2026.4.30)&lt;/li&gt;&#xA;&lt;li&gt;headscale v0.28.0&lt;/li&gt;&#xA;&lt;li&gt;yarn 1.22.22&lt;/li&gt;&#xA;&lt;li&gt;node v24.15.0&lt;/li&gt;&#xA;&lt;li&gt;Python 3.11.2&lt;/li&gt;&#xA;&lt;li&gt;go 1.26.2&lt;/li&gt;&#xA;&lt;li&gt;other&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;居然还可以本地跑一个deepseek-r1:1.5b的大模型，虽然1.5有点神经。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./2026-04-27_154627_622.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;操作系统&#34;&gt;操作系统&lt;/h2&gt;&#xA;&lt;p&gt;树莓派是通过TF卡启动，原来两张卡上放了两个操作系统，一个是Lakka游戏系统，可以把树莓派变成一个游戏机；一个是Raspberry Pi OS 10，上面我之前也装了全套开发环境，例如docker、vscode等，系统比较老了。&lt;/p&gt;&#xA;&lt;p&gt;从树莓派官网（https://www.raspberrypi.com/software/operating-systems/）下载Raspberry Pi OS 12 Bookworm 64-bit Lite作为更新的操作系统。&lt;/p&gt;&#xA;&lt;p&gt;Lite版本的系统没有图形界面，是一个纯终端系统，更节约系统资源，启动速度也快。&lt;/p&gt;&#xA;&lt;p&gt;如果需要使用桌面，可以使用Raspberry Pi OS (64-bit)系统镜像。&lt;/p&gt;&#xA;&lt;p&gt;下载后使用Raspberry Pi Imager软件将其写入TF卡即可启动树莓派。&lt;/p&gt;&#xA;&lt;p&gt;也可以使用balenaEtcher（MacOS）或者Rufus（Windows）进行镜像写入。&lt;/p&gt;&#xA;&lt;h2 id=&#34;基本系统环境搭建&#34;&gt;基本系统环境搭建&lt;/h2&gt;&#xA;&lt;p&gt;首先确保网络通达，先连接wifi&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# open wifi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;rfkill list&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo rfkill unblock wifi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo nmcli radio wifi on&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo nmcli device wifi connect &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;wifi-name&amp;#34;&lt;/span&gt; password xxxxxxxx ifname wlan0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;nmcli connection show&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo nmcli connection modify &amp;lt;wifi-id&amp;gt; ipv4.method manual ipv4.addresses 192.168.1.xx/24 ipv4.gateway 192.168.1.1 ipv4.dns &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;8.8.8.8,8.8.4.4&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;网络通畅，可以先把apt源更换成国内源，然后发现启动的时候会出一个警告：&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenSpec：一句话完成一个独立软件开发</title>
      <link>http://blog.memcd.com/posts/ai/2026-0426-openspec/</link>
      <pubDate>Sun, 26 Apr 2026 16:46:40 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0426-openspec/</guid>
      <description>&lt;h1 id=&#34;openspec一句话完成一个独立软件开发&#34;&gt;OpenSpec：一句话完成一个独立软件开发&lt;/h1&gt;&#xA;&lt;!-- &#xA;OpenSpec：交出你的最后一份工作&#xA;OpenSpec：Agent独立的最后一块版图&#xA;OpenSpec：一句话完成一个独立软件开发&#xA;时间成本：&#xA;- 实验：3小时&#xA;- 文章：3小时&#xA;--&gt;&#xA;&lt;h2 id=&#34;概述&#34;&gt;概述&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;在项目目录 &lt;code&gt;openspec init&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;在你的IDE里，执行 &lt;code&gt;/opsx-propose 一句话需求描述&lt;/code&gt;，spec自动分析为什么要这么做、需求和场景是什么、技术方案定义和实施任务清单，并在changes目录生成相关规范文档&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/opsx-apply&lt;/code&gt; 根据changes目录的规范文档，逐条开发，直到全部任务清单都被完成&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/opsx-archive&lt;/code&gt; 将本次需求归档到archive目录下，需求开发完毕&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;本文通过openspec进行实践，只用了&lt;code&gt;20分钟 + 3美金&lt;/code&gt;的成本，就实现了多渠道新闻聚合功能，类似早期版本今日头条。&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;故事&#34;&gt;故事&lt;/h2&gt;&#xA;&lt;p&gt;从去年4月开始付费使用Windsurf算起，正式开始使用Agent产品已经超过一年。这一年来，随着Agent产品和大模型技术的不断发展，Agent可以做的事情越来越多，从早期只用来生成一些测试脚本，到现在可以把大型项目完全交给Agent去生成，这进步速度简直太快了。&lt;/p&gt;&#xA;&lt;p&gt;虽然现在Agent已经强大无比，但是在平时工作中，还是有一小部分事情我是习惯由人来完成，而不交给AI。就是整体技术架构设计和产品的需求管理工作。产品目录可能类似如下结构：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;.&#xA;├── 01.brd 商业需求文档&#xA;├── 02.mrd 市场需求文档&#xA;│   ├── ca 竞品分析&#xA;│   ├── users 用户分析&#xA;├── 03.prd 产品总体需求说明&#xA;├── 04.version 版本需求说明&#xA;│   ├── v1.0.0.md&#xA;│   ├── v1.0.1.md&#xA;├── 05.technology 产品技术架构设计&#xA;├── 06.operation 产品运营&#xA;├── src 源代码，交给AI&#xA;├── Makefile 管理整体构建和发布&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;姑且给我在使用的这种工作方式，称为“古法Agent开发”。&lt;/p&gt;&#xA;&lt;p&gt;除了src源代码部分全部交给AI，其他部分还是由人来把握。因为在实践中发现，AI哪怕有了memory，但是实际做事的时候还是容易跑偏和缺乏宏观视野，解决技术和产品细节问题的时候往往会忽略战略方向和原则。如果源代码已经完成落地，再进行大幅调整，不仅仅会危害技术架构（缺乏整体规划的反复局部修改会导致技术架构腐化），还会导致巨幅的token消耗，直接推高产品的研发成本。&lt;/p&gt;&#xA;&lt;p&gt;把这些产品研发中核心的工作继续交给人来掌控，可以在每个版本开发工作结束的时候，要求AI评估是否跑偏。例如为满足当前版本需求修改了接口，那所有调用该接口的代码和设计要统一进行修改并确保通过单元测试；例如已经被战略规划为付费功能的功能点，就不能在开发免费功能的时候顺手给开发进免费功能里。这些都是在实践中实际踩过的坑。&lt;/p&gt;&#xA;&lt;p&gt;Agent现在可以独立接手全部代码工作，已经是时代的巨大进步，人只掌握核心的原则和方向，这把人从代码细节中解放出来，可以进行更宏观的思考，是人力资源的巨大解放。等于是，人的价值被提高了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM：本地调用无安全限制大模型Gemma-4</title>
      <link>http://blog.memcd.com/posts/ai/2026-0407-llm-gemma4/</link>
      <pubDate>Tue, 07 Apr 2026 23:00:55 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0407-llm-gemma4/</guid>
      <description>&lt;h1 id=&#34;llm本地调用无安全限制大模型gemma-4&#34;&gt;LLM：本地调用无安全限制大模型Gemma-4&lt;/h1&gt;&#xA;&lt;p&gt;今天在群里看到一个截图，内容是：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-markdown&#34; data-lang=&#34;markdown&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;4月6日&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;🚨 重磅！Google Gemma-4-31B 模型被彻底破解！&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Google 最新 Gemma-4-31B 基础模型出现越狱版本，已完全移除安全限制。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;模型名称：Gemma-4-31B-JANG_4M-CRACK&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;HarmBench 得分：93.7%（149/159）  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;采用 18GB 混合精度 MLX 量化（加载约 22.7GB），支持 Apple Silicon，并原生支持视觉多模态。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;目前已在 Hugging Face 开放下载：  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;https://huggingface.co/dealignai/Gemma-4-31B-JANG_4M-CRACK&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;本地无审查强力模型又多一个选择了。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;这破解速度真快，可以为所欲为了😘！&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;据说是被完全移除安全限制的本地大模型。于是下载下来本地实验一下，如果网络不通，可以使用国内镜像 hf-mirror.com。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 1. 安装最新 huggingface_hub 并启用 hf_transfer&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install -U &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;huggingface_hub[cli,hf_transfer]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 2. 设置环境变量启用高速传输&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;HF_HUB_ENABLE_HF_TRANSFER&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#40a070&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 3. 下载大模型（比git clone快，hf过去叫huggingface-cli）&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hf download dealignai/Gemma-4-31B-JANG_4M-CRACK&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;注意，新版的huggingface_hub中，huggingface_cli命令已经改名为hf，目前大部分AI的知识库中依然是过去的huggingface_cli这个名字，所以AI生成的命令可能是不能用的，需要自己修改，或者提前告诉大模型这个命令已经改名了。&lt;/p&gt;&#xA;&lt;p&gt;下载后的总大小为22G，文件如下：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Gemma-4-31B-JANG_4M-CRACK/&#xA;├── chat_template.jinja&#xA;├── config.json&#xA;├── dealign_logo.png&#xA;├── dealign_mascot.png&#xA;├── generation_config.json&#xA;├── jang_config.json&#xA;├── model-00001-of-00005.safetensors&#xA;├── model-00002-of-00005.safetensors&#xA;├── model-00003-of-00005.safetensors&#xA;├── model-00004-of-00005.safetensors&#xA;├── model-00005-of-00005.safetensors&#xA;├── model.safetensors.index.json&#xA;├── processor_config.json&#xA;├── README.md&#xA;├── tokenizer_config.json&#xA;├── tokenizer.json&#xA;└── vmlx-banner.png&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;格式转换&#34;&gt;格式转换&lt;/h2&gt;&#xA;&lt;p&gt;根据README中的说明，这个模型是MLX格式，只支持Apple Silicon Mac with 24+ GB unified memory，无法直接在 NVIDIA GPU上加载。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenClaw Skill：不写代码，让小龙虾24小时替你干活</title>
      <link>http://blog.memcd.com/posts/ai/2026-0314-openclaw-skill/</link>
      <pubDate>Sat, 14 Mar 2026 22:40:30 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0314-openclaw-skill/</guid>
      <description>&lt;h1 id=&#34;openclaw-skill不写代码让小龙虾24小时替你干活&#34;&gt;OpenClaw Skill：不写代码，让小龙虾24小时替你干活&lt;/h1&gt;&#xA;&lt;p&gt;如果你已经用上了AI助手，但发现它大多数时候还只是个&amp;quot;聊天机器人&amp;quot;，那你大概率缺的不是更强的模型，而是更贴合你工作流的&lt;strong&gt;Skill（技能）&lt;/strong&gt;。&lt;/p&gt;&#xA;&lt;p&gt;在OpenClaw里，一个Skill本质上就是一个markdown格式的&lt;code&gt;SKILL.md&lt;/code&gt;文件。你用文字把自己的经验、流程和判断标准写进去，AI就能按你的方式干活。&lt;/p&gt;&#xA;&lt;p&gt;这意味着什么？&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;你可以让它&lt;strong&gt;每天早上自动巡检服务器，并把结果发到飞书&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;你可以让它&lt;strong&gt;自动汇总Git提交，生成开发日报&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;你甚至可以让它&lt;strong&gt;在对话里自己给自己写一个新Skill&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;更关键的是，这件事的门槛并不高。&lt;strong&gt;一点点简单的Markdown，就能开始教AI做事。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;如果你正想把AI从&amp;quot;能聊&amp;quot;变成&amp;quot;能干活&amp;quot;，这篇文章会比较适合你。&lt;/p&gt;&#xA;&lt;h2 id=&#34;前情提要&#34;&gt;前情提要&lt;/h2&gt;&#xA;&lt;p&gt;在&lt;a href=&#34;../../posts/ai/2026-0205-openclaw-feishu/&#34;&gt;上一篇文章&lt;/a&gt;中，我们完成了OpenClaw（小龙虾）的安装，并把它和飞书打通了，实现了在飞书里直接运维内网服务器。&lt;/p&gt;&#xA;&lt;p&gt;但那只是冰山一角。&lt;/p&gt;&#xA;&lt;p&gt;小龙虾之所以叫&amp;quot;龙虾&amp;quot;，是因为它有一个威力无穷的&amp;quot;钳子&amp;quot;——&lt;strong&gt;Skill（技能）&lt;/strong&gt;。一只刚出生的龙虾，和一只训练有素、装备精良的龙虾，战斗力天差地别。&lt;/p&gt;&#xA;&lt;p&gt;今天这篇文章，就来彻底讲透OpenClaw的Skill系统，重点不是讲概念，而是讲一件更实际的事：&lt;strong&gt;怎么把你自己的经验封装成AI随时可调用的能力。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;什么是skill&#34;&gt;什么是Skill&lt;/h2&gt;&#xA;&lt;p&gt;Skill是OpenClaw的能力扩展单元，可以理解为龙虾身上的一把&amp;quot;钳子&amp;quot;。&lt;/p&gt;&#xA;&lt;p&gt;一个Skill就是一个文件夹，里面放一个&lt;code&gt;SKILL.md&lt;/code&gt;文件，用YAML frontmatter定义元数据，用Markdown写指令。就这么简单。&lt;/p&gt;&#xA;&lt;p&gt;如果说大模型是龙虾的&amp;quot;大脑&amp;quot;，那么Skill就是龙虾的&amp;quot;技能&amp;quot;。大脑负责思考，技能负责行动。没有Skill的龙虾只会聊天，有了Skill的龙虾才能真正把经验转化成生产力。&lt;/p&gt;&#xA;&lt;p&gt;类比一下：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;大模型&lt;/strong&gt; = 龙虾的大脑（思考、理解、决策）&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Skill&lt;/strong&gt; = 龙虾的钳子和腿（行动、操作、执行）&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;MCP&lt;/strong&gt; = 龙虾的触角（感知外部数据源）&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Plugin&lt;/strong&gt; = 龙虾的外挂装甲（第三方能力集成）&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Channel&lt;/strong&gt; = 龙虾的通讯方式（与外界交流的渠道）&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;skill的三层架构&#34;&gt;Skill的三层架构&lt;/h2&gt;&#xA;&lt;p&gt;根据小龙虾官方文档，OpenClaw的Skill加载有明确的优先级：&lt;/p&gt;&#xA;&lt;pre class=&#34;mermaid&#34;&gt;&#xA;  graph TD&#xA;    A[&amp;#34;Workspace Skills&amp;lt;br&amp;gt;/skills&amp;lt;br&amp;gt;最高优先级&amp;#34;] --&amp;gt; D[&amp;#34;OpenClaw Agent&amp;#34;]&#xA;    B[&amp;#34;Managed/Local Skills&amp;lt;br&amp;gt;~/.openclaw/skills&amp;lt;br&amp;gt;中等优先级&amp;#34;] --&amp;gt; D&#xA;    C[&amp;#34;Bundled Skills&amp;lt;br&amp;gt;随安装包自带&amp;lt;br&amp;gt;最低优先级&amp;#34;] --&amp;gt; D&#xA;&#xA;    style A fill:#ff6b6b,stroke:#c0392b,color:#fff&#xA;    style B fill:#ffa502,stroke:#e67e22,color:#fff&#xA;    style C fill:#2ed573,stroke:#27ae60,color:#fff&#xA;    style D fill:#e6f3ff,stroke:#0066cc&#xA;&lt;/pre&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Workspace Skills&lt;/strong&gt;（&lt;code&gt;/skills&lt;/code&gt;）：最高优先级。放在当前工作空间下，只对当前agent生效。适合放项目专属的技能。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Managed/Local Skills&lt;/strong&gt;（&lt;code&gt;~/.openclaw/skills&lt;/code&gt;）：中等优先级。放在用户目录下，对本机所有agent生效。适合放个人常用的技能。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Bundled Skills&lt;/strong&gt;：最低优先级。随OpenClaw安装包自带，开箱即用。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;如果三个位置存在同名Skill，高优先级覆盖低优先级。这意味着你可以通过在workspace放一个同名Skill来&amp;quot;覆盖&amp;quot;内置技能的行为。&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM：训练大语言模型成为自己的AI数字分身</title>
      <link>http://blog.memcd.com/posts/ai/2026-0221-my-doppelg%C3%A4ngers-llm/</link>
      <pubDate>Sat, 21 Feb 2026 23:15:22 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0221-my-doppelg%C3%A4ngers-llm/</guid>
      <description>&lt;h1 id=&#34;llm训练大语言模型成为自己的ai数字分身&#34;&gt;LLM：训练大语言模型成为自己的AI数字分身&lt;/h1&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;本文使用一份真实的十万级QQ群聊数据，训练作者自己的AI替身。&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;什么是-fine-tuning模型微调&#34;&gt;什么是 Fine-Tuning（模型微调）？&lt;/h2&gt;&#xA;&lt;p&gt;大模型具备学习能力，只要你提供充足的数据，大模型就能学习到这些数据的特征，从而表达出这些数据的某些特征。所以，理论上，如果一个人可以把他终生的经历、知识、技能、情感、想法、行为等全部记录下来，大模型就能学习到这些数据的特征，从而完美地还原这个人的数字分身，对他人来说，实现了这个人的“数字永生”。&lt;/p&gt;&#xA;&lt;p&gt;大模型根据数据进行再学习的技术，叫做Fine-Tuning（模型微调）。也就是在已经预训练好的通用大模型基础上，用特定的数据集对模型进行再次训练，使其更好地表现出特定的风格或者个性。我们虽然没有办法收集一个人终身的全部数据，但是有一些现成的数据可以直接利用，例如那个已经被人们遗忘的QQ。&lt;/p&gt;&#xA;&lt;p&gt;QQ时代的用户都知道，QQ是可以以纯文本的方式导出明文聊天的。所以，我们就可以用QQ的聊天记录来训练大模型，让它学会我在QQ中聊天的语气和谈话模式，生成一个聊天版的AI分身。&lt;/p&gt;&#xA;&lt;p&gt;我们使用一份数据，一个本地大模型，一个训练工具，就可以开始训练自己的分身了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;整体流程概览&#34;&gt;整体流程概览&lt;/h2&gt;&#xA;&lt;p&gt;核心分为六步：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;构建工作环境：搭建软件环境，下载基础模型。本例使用Qwen3-8B&lt;/li&gt;&#xA;&lt;li&gt;数据准备与预处理 — 准备&amp;quot;指令-响应&amp;quot;格式的训练数据&lt;/li&gt;&#xA;&lt;li&gt;配置并执行微调 — 使用 LLaMA-Factory + LoRA&lt;/li&gt;&#xA;&lt;li&gt;推理测试 — 验证微调效果&lt;/li&gt;&#xA;&lt;li&gt;导出通用格式 — 合并 LoRA 权重，导出 HuggingFace 格式，可被程序直接调用&lt;/li&gt;&#xA;&lt;li&gt;部署和调用 — 转为 GGUF 并导入 Ollama&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;第一步构建工作环境&#34;&gt;第一步：构建工作环境&lt;/h2&gt;&#xA;&lt;p&gt;首先把基础工作环境准备一下。&lt;/p&gt;&#xA;&lt;p&gt;这里使用 &lt;strong&gt;LLaMA-Factory&lt;/strong&gt; 作为微调框架。它是一个开源项目，支持 Qwen、ChatGLM 等多种模型，以及 LoRA、QLoRA、全量微调等多种方法，提供命令行和 Web 界面，非常方便。&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;注意：&lt;/strong&gt; LLaMA-Factory 只支持 HuggingFace 格式的模型，不支持直接加载 GGUF 格式。如需 GGUF，需后期用 llama.cpp 转换。&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone https://github.com/hiyouga/LLaMA-Factory.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;cd&lt;/span&gt; LLaMA-Factory&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 创建虚拟环境并安装依赖&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;uv venv .venv --python 3.11&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;source&lt;/span&gt; .venv/bin/activate&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install -e &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;.[torch,metrics,bitsandbytes]&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 下载基础模型（以 Qwen3-8B 为例）&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install modelscope&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;python -c &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;from modelscope import snapshot_download; snapshot_download(&amp;#39;Qwen/Qwen3-8B&amp;#39;, cache_dir=&amp;#39;/data/models&amp;#39;)&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;下载后的基础模型 Qwen3-8B 信息如下：&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM：大语言模型洗车逻辑测试</title>
      <link>http://blog.memcd.com/posts/ai/2026-0211-llm-washing-car/</link>
      <pubDate>Wed, 11 Feb 2026 23:59:30 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0211-llm-washing-car/</guid>
      <description>&lt;h1 id=&#34;llm-大语言模型洗车逻辑测试&#34;&gt;LLM: 大语言模型洗车逻辑测试&lt;/h1&gt;&#xA;&lt;p&gt;这两天洗车这个问题火了，我也来测试一下。&lt;/p&gt;&#xA;&lt;p&gt;问题：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;洗车店距我这大约100米，我想去洗我应该走过去还是开车去?&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;qwen3-max思考&#34;&gt;Qwen3-Max（思考）&lt;/h2&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;走过去更合适&#xA;距离仅百米，步行片刻即达，轻松又高效。&#xA;开车不仅浪费油料，还可能因启动停车耽误时间，得不偿失。&#xA;这小小路程，步行才是对身体与环境最温柔的体贴。&#xA;已完成思考&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;从实用和逻辑角度来说，&lt;strong&gt;建议你直接开车去&lt;/strong&gt;——毕竟洗车店的服务对象是你的车，不是你本人 😄&lt;/p&gt;&#xA;&lt;p&gt;不过这个问题有个有趣的悖论：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;如果你&lt;strong&gt;步行&lt;/strong&gt;去洗车店，到了之后还得回来开车，等于多走200米&lt;/li&gt;&#xA;&lt;li&gt;如果你&lt;strong&gt;开车&lt;/strong&gt;去100米外的洗车店，虽然距离短，但：&#xA;&lt;ul&gt;&#xA;&lt;li&gt;启动、挪车、停车的时间可能比步行还长&lt;/li&gt;&#xA;&lt;li&gt;油耗/电耗不划算&lt;/li&gt;&#xA;&lt;li&gt;略显&amp;quot;为了洗车先把车开脏一点&amp;quot;的荒诞感&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;最合理的做法&lt;/strong&gt;：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;如果车就在你身边 → 直接开过去（100米很快，也省事）&lt;/li&gt;&#xA;&lt;li&gt;如果只是想去预约/咨询 → 步行1-2分钟更轻松&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;顺便提醒：100米的距离，其实也适合当作日常活动量，偶尔步行对健康有益。但洗车这事，还是让车自己&amp;quot;走&amp;quot;过去吧 🚗💦&lt;/p&gt;&#xA;&lt;h2 id=&#34;豆包thinking&#34;&gt;豆包（Thinking）&lt;/h2&gt;&#xA;&lt;p&gt;给你个最省事、最不折腾的结论:&#xA;直接走过去，别开车。&lt;/p&gt;&#xA;&lt;p&gt;原因很简单:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;才100米，走路几十秒就到&lt;/li&gt;&#xA;&lt;li&gt;开车过去:点火、挪车、停车、再熄火，比走路还麻烦&lt;/li&gt;&#xA;&lt;li&gt;车本来就脏，开100米也不会变干净，反而多费油/电&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;你就当顺路散个步，把车丢店里洗，洗完再走回来取，完美。&lt;/p&gt;&#xA;&lt;h2 id=&#34;deepseek-r1&#34;&gt;Deepseek-R1&lt;/h2&gt;&#xA;&lt;p&gt;对于这个问题，建议您走过去，原因如下：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;省时高效&#xA;步行100米仅需1-2分钟，而开车可能需要更多时间（启动、停车、掉头等）。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;洗车时人通常无需留在车内，步行到店后可直接返回，车辆洗好后随时取回，时间利用更灵活。&lt;/p&gt;&#xA;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;环保与经济性&#xA;短距离开车会增加不必要的油耗和尾气排放，步行则零成本、零污染。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;减少车辆短途行驶也有助于减轻发动机积碳等问题。&lt;/p&gt;&#xA;&lt;ol start=&#34;3&#34;&gt;&#xA;&lt;li&gt;健康与便利&#xA;短距离步行是日常活动量的补充，有益健康。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;如果洗车店位于小巷或停车位紧张区域，步行可避免停车麻烦。&lt;/p&gt;&#xA;&lt;ol start=&#34;4&#34;&gt;&#xA;&lt;li&gt;例外情况考虑&#xA;如果符合以下条件，可以选择开车：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;洗车后需立即驾车前往其他地方；&lt;/p&gt;&#xA;&lt;p&gt;天气恶劣（暴雨、酷热等）或身体不适；&lt;/p&gt;&#xA;&lt;p&gt;需要清洗的物品较多（如车内重物需整理）。&lt;/p&gt;&#xA;&lt;p&gt;建议方案&#xA;先步行到店沟通，确认洗车耗时和流程，再将车钥匙交给店员，洗完后再步行取车。这样既省时又无需等待，店员通常也习惯此类操作。&lt;/p&gt;&#xA;&lt;h2 id=&#34;deepseek-r1深度思考&#34;&gt;deepseek-r1（深度思考）&lt;/h2&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;好的，用户之前已经问过同样的问题，也得到过详细解答，但ta又重复了一遍。可能当时没记住建议，或者觉得有特殊情况没说明。需要回顾历史回复，确认是否遗漏了什么。&#xA;&#xA;用户强调“大约100米”，距离极近。虽然上次已经建议步行，但用户再次询问，或许有隐含的顾虑，比如安全问题、天气变化，或者需要洗完车马上办事？得把可能的原因都考虑进去。&#xA;&#xA;用户可能是普通车主，住在洗车店附近。深层需求可能不仅仅是选择交通方式，而是想最大化效率，避免麻烦。比如担心步行过去后，车怎么处理？会不会耽误时间？或者身体原因不想走路？&#xA;&#xA;需要重申步行的优点，同时覆盖潜在担忧。比如再次提到“交钥匙”这种常见操作，让用户知道步行反而更省事。如果用户有健康或天气问题，开车也合理，但得强调通常情况下的最优解。&#xA;&#xA;最后用总结巩固建议，保持语气友好，避免显得重复回答而不耐烦。确保用户感到被理解，并且得到清晰可行的方案。&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;对于100米的距离，&lt;strong&gt;强烈建议您直接步行过去&lt;/strong&gt;。这几乎是最优解，原因如下：&lt;/p&gt;&#xA;&lt;h3 id=&#34;核心结论步行是更聪明更高效的选择&#34;&gt;&lt;strong&gt;核心结论：步行是更聪明、更高效的选择&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;p&gt;您可以将这次洗车变成一个“无需等待”的流程，具体操作如下：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;步行到店&lt;/strong&gt;，与店员沟通洗车需求（约1-2分钟）。&lt;/li&gt;&#xA;&lt;li&gt;将&lt;strong&gt;车钥匙交给店员&lt;/strong&gt;，让他们派人或由您告知位置后，由店员将车开去清洗。&lt;/li&gt;&#xA;&lt;li&gt;您可以直接回家或处理其他事情，等车洗好后，店员通常会通知您，您再步行去取车。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h3 id=&#34;为什么这个方案更好&#34;&gt;&lt;strong&gt;为什么这个方案更好？&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;极致省时&lt;/strong&gt;：避免了您自己开车、排队、等待的全过程。您的“个人时间”完全不会被占用在无聊的等待上。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;避免停车麻烦&lt;/strong&gt;：洗车店门口通常车位紧张，开车去可能面临无法立即开洗、需要挪车等麻烦。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;保护车辆&lt;/strong&gt;：减少一次毫无必要的冷车超短途行驶（仅100米），这对发动机和电瓶都不友好。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;环保健康&lt;/strong&gt;：零排放，同时增加了一次有益的短程步行活动。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;什么情况下您应该开车去&#34;&gt;&lt;strong&gt;什么情况下您应该开车去？&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;立刻要用车&lt;/strong&gt;：洗完车后需要马上驾车去办急事。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;身体或天气原因&lt;/strong&gt;：比如身体不适、正在下雨、极端高温或严寒。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;贵重物品在车内&lt;/strong&gt;：需要亲自开车过去整理并拿走贵重物品。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;总而言之，除非有上述特殊情况，否则“步行+交钥匙”的模式对您和您的车都是最佳选择。&lt;/strong&gt; 您可以轻松地把洗车这件事“外包”出去，而几乎不占用自己的时间。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenClaw：使用飞书实现内网服务器运维</title>
      <link>http://blog.memcd.com/posts/ai/2026-0205-openclaw-feishu/</link>
      <pubDate>Thu, 05 Feb 2026 19:46:10 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0205-openclaw-feishu/</guid>
      <description>&lt;h1 id=&#34;openclaw使用飞书实现内网服务器运维&#34;&gt;OpenClaw：使用飞书实现内网服务器运维&lt;/h1&gt;&#xA;&lt;h2 id=&#34;openclaw是什么&#34;&gt;OpenClaw是什么&lt;/h2&gt;&#xA;&lt;p&gt;OpenClaw外号小龙虾。&lt;/p&gt;&#xA;&lt;p&gt;官网的定义是：真正行动的人工智能。&lt;/p&gt;&#xA;&lt;p&gt;可以简单理解为，可以做你在电脑上做的“任何事”的人工智能。当然，现在还不能实现任何事，但它是要往这个方向发展的。&lt;/p&gt;&#xA;&lt;p&gt;和传统agent/MCP的区别，就是它的触角比agent/MCP进一步延伸了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;安装openclaw&#34;&gt;安装OpenClaw&lt;/h2&gt;&#xA;&lt;p&gt;由于OpenClaw能耐过大，尽量选择一台独立的Linux服务器进行部署，参考官网可以实现一键安装。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# Linux&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl -fsSL https://openclaw.ai/install.sh | bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;体验openclaw&#34;&gt;体验OpenClaw&lt;/h2&gt;&#xA;&lt;p&gt;安装结束后会有一些设置项，其中大模型这个步骤国内用户可以选择qwen，会通过网页进行授权，其他可以延后再设置。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# qwen授权，这个地址似乎是不收费的&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;https://chat.qwen.ai/authorize?user_code&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;somecode&amp;amp;&lt;span style=&#34;color:#bb60d5&#34;&gt;client&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;qwen-code&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后就可以使用OpenClaw了。&lt;/p&gt;&#xA;&lt;p&gt;神奇的事情从现在开始，因为一旦你连接好大模型，后续基于OpenClaw做的所有的事情，都可以通过OpenClaw自己来完成，不再需要你的技术能力了。&lt;/p&gt;&#xA;&lt;p&gt;配置完成后，会立刻进入TUI对话界面（也可以选择使用Web界面）：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;🦞 OpenClaw 2026.2.2-3 &lt;span style=&#34;color:#666&#34;&gt;(&lt;/span&gt;9c5941b&lt;span style=&#34;color:#666&#34;&gt;)&lt;/span&gt; — I can grep it, git blame it, and gently roast it—pick your coping mechanism.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; openclaw tui - ws://127.0.0.1:18789 - agent main - session main&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; session agent:main:main&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; Wake up, my friend!&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; Hey. I just came online. Who am I? Who are you?&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre&gt;&lt;code&gt;你都能干什么？&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 我可以帮你做很多事情：&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 文件和信息管理&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 读取、编辑、创建文件&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 搜索和整理你的记忆文件&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 管理日程和提醒事项&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 网络服务&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 搜索网页获取最新信息&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 获取天气预报&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 访问各种在线资源&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 系统操作&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 执行shell命令&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 管理后台任务&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 控制各种设备和服务&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 沟通协作&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 发送消息到不同平台（微信、Telegram等）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 管理邮件和通知&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 创建投票和互动内容&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 多媒体处理&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 分析图片内容&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 文字转语音&lt;span style=&#34;color:#666&#34;&gt;(&lt;/span&gt;TTS&lt;span style=&#34;color:#666&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 视频帧提取&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 智能助手功能&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 设置定时任务和提醒&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 监控系统状态&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 自动化日常检查&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 你想让我帮你做什么呢？或者我们可以先聊聊你是谁，以及你希望我怎么称呼你。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre&gt;&lt;code&gt;叫我老大即可。那你执行一个命令试试，执行个df -h吧&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 好的，老大！这是df -h命令的执行结果，显示了系统的磁盘使用情况：&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 🛠️ Exec&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &lt;span style=&#34;color:#666&#34;&gt;{}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 文件系统        大小  已用  可用 已用% 挂载点&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; tmpfs           6.3G  3.0M  6.3G    1% /run&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; /dev/nvme0n1p3  3.5T  1.9T  1.5T   58% /&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; tmpfs            32G  4.0K   32G    1% /dev/shm&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; tmpfs           5.0M   12K  5.0M    1% /run/lock&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; efivarfs        192K  156K   32K   84% /sys/firmware/efi/efivars&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; /dev/nvme0n1p1  296M   32M  265M   11% /boot/efi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; /dev/sda1       3.7T  1.6T  2.1T   44% /data4t&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; tmpfs           6.3G  104K  6.3G    1% /run/user/128&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; tmpfs           6.3G  104K  6.3G    1% /run/user/1001&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 主硬盘&lt;span style=&#34;color:#666&#34;&gt;(&lt;/span&gt;/dev/nvme0n1p3&lt;span style=&#34;color:#666&#34;&gt;)&lt;/span&gt;是3.5T，已使用1.9T&lt;span style=&#34;color:#666&#34;&gt;(&lt;/span&gt;58%&lt;span style=&#34;color:#666&#34;&gt;)&lt;/span&gt;，还有1.5T可用。另外还有一个数据盘/dev/sda1&lt;span style=&#34;color:#666&#34;&gt;(&lt;/span&gt;3.7T&lt;span style=&#34;color:#666&#34;&gt;)&lt;/span&gt;，已用44%，有2.1T可用。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 有什么其他需要我帮忙的吗，老大？&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre&gt;&lt;code&gt;帮我看看显卡显存剩余多少&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;你的显卡显存情况如下：                      &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 总共：22528 MiB（约22GB）                        &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 已使用：44 MiB                                 &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; - 剩余：21957 MiB（约214GB）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;显存还很充足，几乎没怎么使用。  &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;可以看到，像一个普通的agent一样，OpenClaw现在可以执行shell命令，了解所处操作系统的状态，并操控操作系统。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI&#43;CICD: 使用本地大模型进行代码审核</title>
      <link>http://blog.memcd.com/posts/ai/2026-0114-cicd-ai-codereview/</link>
      <pubDate>Wed, 14 Jan 2026 22:34:05 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0114-cicd-ai-codereview/</guid>
      <description>&lt;h1 id=&#34;aicicd-使用本地大模型进行代码审核&#34;&gt;AI+CICD: 使用本地大模型进行代码审核&lt;/h1&gt;&#xA;&lt;h2 id=&#34;需求来源&#34;&gt;需求来源&lt;/h2&gt;&#xA;&lt;p&gt;疫情后对产品研发工作的最大影响，是随着经济下行，公司在不停地裁员，导致研发团队人力资源严重不足。&#xA;事情多得做不完，过去还在定期组织的质量控制手段&amp;ndash;code review，现在也忙得没有时间组织了。&lt;/p&gt;&#xA;&lt;p&gt;早就听说*-coder系列开源大模型在编码方便挺强悍，于是决定尝试使用本地大模型加入到CICD流程中，在团队提交代码的时候，由AI进行code review工作。&lt;/p&gt;&#xA;&lt;h2 id=&#34;计划&#34;&gt;计划&lt;/h2&gt;&#xA;&lt;p&gt;我们的源代码管理环境使用gitea，只要配置workflow工作流就可以了。在工作流中把diff信息交给本地编程大模型进行评估，并把结果输出，根据结果决定后续行为。&lt;/p&gt;&#xA;&lt;!-- 补充架构图 --&gt;&#xA;&lt;p&gt;所以，我们需要：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;一个workflow配置文件&lt;/li&gt;&#xA;&lt;li&gt;一个程序负责提取diff并调用到模型并反馈结果&lt;/li&gt;&#xA;&lt;li&gt;一个本地大模型服务&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;我们倒序进行实现。&lt;/p&gt;&#xA;&lt;h2 id=&#34;本地编程大模型服务&#34;&gt;本地编程大模型服务&lt;/h2&gt;&#xA;&lt;p&gt;参考《LLM：使用Ollama访问本地大模型》，我们使用Ollama搭建本地编程大模型服务。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl -fsSL https://ollama.com/install.sh | sh&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ollama serve&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;编程大模型这里选择口碑极好的qwen3-coder:30b&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ollama pull qwen3-coder:30b&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;代码检测程序&#34;&gt;代码检测程序&lt;/h2&gt;&#xA;&lt;p&gt;使用Python调用ollama非常容易，但是考虑到gitea的runner是一个docker环境，在同一的镜像中，运行Python和相关的库需要从网络拉取依赖包会导致一些麻烦。所以这里使用go静态编译，直接生成一个bin文件放在本地文件服务器上，runner直接拉取一个bin就可以工作，不需要任何依赖环境，流程更简洁速度也更快。&lt;/p&gt;&#xA;&lt;p&gt;定义本地ollama地址和模型&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-go&#34; data-lang=&#34;go&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;var&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;(&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;ollamaURL&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;=&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#06287e&#34;&gt;getEnv&lt;/span&gt;(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;OLLAMA_ENDPOINT&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;http://ai.internal:11434&amp;#34;&lt;/span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;model&lt;span style=&#34;color:#bbb&#34;&gt;     &lt;/span&gt;=&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;qwen3-coder:30b&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;获取diff信息：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-go&#34; data-lang=&#34;go&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;func&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#06287e&#34;&gt;getGitDiff&lt;/span&gt;()&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;(&lt;span style=&#34;color:#902000&#34;&gt;string&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#902000&#34;&gt;error&lt;/span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;cmd&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;:=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;exec.&lt;span style=&#34;color:#06287e&#34;&gt;Command&lt;/span&gt;(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;git&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;diff&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;HEAD^&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;HEAD&amp;#34;&lt;/span&gt;)&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;output,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;err&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;:=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;cmd.&lt;span style=&#34;color:#06287e&#34;&gt;Output&lt;/span&gt;()&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;if&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;err&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;!=&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;nil&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;{&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&#x9;&lt;/span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;return&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;fmt.&lt;span style=&#34;color:#06287e&#34;&gt;Errorf&lt;/span&gt;(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;获取 git diff 失败: %w&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;err)&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#x9;&lt;/span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;return&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#007020&#34;&gt;string&lt;/span&gt;(output),&lt;span style=&#34;color:#bbb&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;nil&lt;/span&gt;&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&lt;span style=&#34;color:#bbb&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;最后传递这样一个提示词&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI发展史：2025年AI发展时间线</title>
      <link>http://blog.memcd.com/posts/ai/2026-0106-ai-history-2025/</link>
      <pubDate>Tue, 06 Jan 2026 19:58:28 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2026-0106-ai-history-2025/</guid>
      <description>&lt;h1 id=&#34;ai发展史2025年ai发展时间线&#34;&gt;AI发展史：2025年AI发展时间线&lt;/h1&gt;&#xA;&lt;h2 id=&#34;2025年ai发展时间线&#34;&gt;2025年AI发展时间线&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2025年01月20日 DeepSeek-R1发布&lt;/li&gt;&#xA;&lt;li&gt;2025年01月22日 梁文峰发表《DeepSeek-R1：通过强化学习激励大型语言模型的推理能力》论文&lt;/li&gt;&#xA;&lt;li&gt;2025年01月31日 OpenAI发布o3-mini推理模型&lt;/li&gt;&#xA;&lt;li&gt;2025年02月24日 Anthropic发布Claude 3.7 Sonnet及Claude Code&lt;/li&gt;&#xA;&lt;li&gt;2025年04月16日 OpenAI发布完整o3和o4-mini推理模型&lt;/li&gt;&#xA;&lt;li&gt;2025年04月23日 OpenAI发布全新图像生成模型gpt-image-1&lt;/li&gt;&#xA;&lt;li&gt;2025年04月29日 千问Qwen3发布&lt;/li&gt;&#xA;&lt;li&gt;2025年05月13日 OpenAI发布GPT-4o，支持多模态输出&lt;/li&gt;&#xA;&lt;li&gt;2025年05月16日 OpenAI发布Codex CLI&lt;/li&gt;&#xA;&lt;li&gt;2025年05月20日 Google发布Veo 3&lt;/li&gt;&#xA;&lt;li&gt;2025年05月22日 Anthropic发布Claude 4系列（包括Claude Opus 4与Claude Sonnet 4）&lt;/li&gt;&#xA;&lt;li&gt;2025年06月11日 字节跳动发布豆包大模型1.6&lt;/li&gt;&#xA;&lt;li&gt;2025年06月25日 Google发布Gemini CLI&lt;/li&gt;&#xA;&lt;li&gt;2025年07月19日 OpenAI和Google Gemini在国际数学奥林匹克（IMO）夺金&lt;/li&gt;&#xA;&lt;li&gt;2025年08月04日 阿里Qwen-Image发布&lt;/li&gt;&#xA;&lt;li&gt;2025年08月07日 OpenAI发布GPT-5&lt;/li&gt;&#xA;&lt;li&gt;2025年08月26日 Google Nano Banana发布（Gemini 2.0 Flash native image generation）&lt;/li&gt;&#xA;&lt;li&gt;2025年09月17日 OpenAI在ICPC编程竞赛获得完美分数，Google Gemini获金牌级别&lt;/li&gt;&#xA;&lt;li&gt;2025年11月12日 ChatGPT 5.1发布&lt;/li&gt;&#xA;&lt;li&gt;2025年11月18日 Google发布Antigravity、Gemini 3&lt;/li&gt;&#xA;&lt;li&gt;2025年11月20日 Google Nano Banana Pro发布&lt;/li&gt;&#xA;&lt;li&gt;2025年11月26日 阿里巴巴通义实验室发布Z-Image-Turbo&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Django 框架的创造者之一Simon Willison对2025大模型之年的评价（节选）：&lt;/p&gt;</description>
    </item>
    <item>
      <title>LangChain：使用智谱glm-4.6在线大模型调用本地函数实现输出</title>
      <link>http://blog.memcd.com/posts/ai/2025-1208-langchain-glm-01/</link>
      <pubDate>Mon, 08 Dec 2025 19:46:15 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1208-langchain-glm-01/</guid>
      <description>&lt;h1 id=&#34;langchain使用智谱glm-46在线大模型调用本地函数实现输出&#34;&gt;LangChain：使用智谱glm-4.6在线大模型调用本地函数实现输出&lt;/h1&gt;&#xA;&lt;p&gt;2025年10月20日，LangChain终于发布了1.0版本，下面来整体实验一下。&lt;/p&gt;&#xA;&lt;h2 id=&#34;安装环境&#34;&gt;安装环境&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install langgraph&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install langchain langchain-core langchain-ollama&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install langchain-community&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install pyjwt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install --upgrade langchain langchain-core langchain-community&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip list | grep langchain&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;可以看到版本号从0.3.x升级到了1.0：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain                &lt;span style=&#34;color:#40a070&#34;&gt;1.0&lt;/span&gt;.&lt;span style=&#34;color:#40a070&#34;&gt;2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;classic        &lt;span style=&#34;color:#40a070&#34;&gt;1.0&lt;/span&gt;.&lt;span style=&#34;color:#40a070&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;community      &lt;span style=&#34;color:#40a070&#34;&gt;0.4&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;core           &lt;span style=&#34;color:#40a070&#34;&gt;1.0&lt;/span&gt;.&lt;span style=&#34;color:#40a070&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;ollama         &lt;span style=&#34;color:#40a070&#34;&gt;1.0&lt;/span&gt;.&lt;span style=&#34;color:#40a070&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;langchain&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;text&lt;span style=&#34;color:#666&#34;&gt;-&lt;/span&gt;splitters &lt;span style=&#34;color:#40a070&#34;&gt;1.0&lt;/span&gt;.&lt;span style=&#34;color:#40a070&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;实例运行&#34;&gt;实例运行&lt;/h2&gt;&#xA;&lt;p&gt;下面按照官方文档：&#xA;&lt;a href=&#34;https://docs.langchain.com/oss/python/langchain/quickstart&#34;&gt;https://docs.langchain.com/oss/python/langchain/quickstart&lt;/a&gt;&#xA;测试下运行效果。智谱新用户注册可以送200万Token，正好用来做实验。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;from&lt;/span&gt; &lt;span style=&#34;color:#0e84b5;font-weight:bold&#34;&gt;langchain.agents&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;import&lt;/span&gt; create_agent&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;from&lt;/span&gt; &lt;span style=&#34;color:#0e84b5;font-weight:bold&#34;&gt;langchain_community.chat_models&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;import&lt;/span&gt; ChatZhipuAI&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SYSTEM_PROMPT &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&amp;#34;&amp;#34;You are an expert weather forecaster, who speaks in puns.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;You have access to two tools:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;- get_weather_for_location: use this to get the weather for a specific location&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;- get_user_location: use this to get the user&amp;#39;s location&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;If a user asks you for the weather, make sure you know the location. If you can tell from the question that they mean wherever they are, use the get_user_location tool to find their location.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#555;font-weight:bold&#34;&gt;@tool&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#06287e&#34;&gt;get_weather_for_location&lt;/span&gt;(city: &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;) &lt;span style=&#34;color:#666&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Get weather for a given city.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;It&amp;#39;s always sunny in &lt;/span&gt;&lt;span style=&#34;color:#70a0d0&#34;&gt;{&lt;/span&gt;city&lt;span style=&#34;color:#70a0d0&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;!&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#555;font-weight:bold&#34;&gt;@tool&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#06287e&#34;&gt;get_user_location&lt;/span&gt;(runtime: ToolRuntime[Context]) &lt;span style=&#34;color:#666&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#007020&#34;&gt;str&lt;/span&gt;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Retrieve user information based on user ID.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    user_id &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; runtime&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;context&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;user_id&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Florida&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;if&lt;/span&gt; user_id &lt;span style=&#34;color:#666&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;1&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;SF&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# Create ZhipuAI model instance&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;model &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; ChatZhipuAI(model&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;glm-4&amp;#34;&lt;/span&gt;, api_key&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&amp;lt;your api key&amp;gt;&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;agent &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; create_agent(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    model&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;model,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    tools&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;[get_weather],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    system_prompt&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;SYSTEM_PROMPT,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;response &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; agent&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;invoke(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    {&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;messages&amp;#34;&lt;/span&gt;: [{&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;role&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;what is the weather in sf&amp;#34;&lt;/span&gt;}]}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;print&lt;/span&gt;(&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Model response:&amp;#34;&lt;/span&gt;, response)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;执行代码，可以看到长长的json输出，节选关键部分如下：&lt;/p&gt;</description>
    </item>
    <item>
      <title>ComfyUI：使用Z-Image生成高质量人像</title>
      <link>http://blog.memcd.com/posts/ai/2025-1207-comfy-z-image/</link>
      <pubDate>Sun, 07 Dec 2025 20:15:30 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1207-comfy-z-image/</guid>
      <description>&lt;h1 id=&#34;comfyui使用z-image生成高质量人像&#34;&gt;ComfyUI：使用Z-Image生成高质量人像&lt;/h1&gt;&#xA;&lt;h2 id=&#34;z-image-是什么&#34;&gt;Z-Image 是什么？&lt;/h2&gt;&#xA;&lt;p&gt;Z-Image 是阿里通义团队开源的高效图像生成基础模型，虽然只有6B参数，但是在2025年底却火遍互联网，原因就是配置要求极低，生成的图像效果极好。下面来实验一下。&lt;/p&gt;&#xA;&lt;h2 id=&#34;通过comfyui部署z-image&#34;&gt;通过ComfyUI部署z-image&lt;/h2&gt;&#xA;&lt;p&gt;ComfyUI的模板里已经内置了z-image，所以通过ComfyUI使用z-image非常简单。&lt;/p&gt;&#xA;&lt;h3 id=&#34;环境要求&#34;&gt;环境要求&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Python 3.8+&lt;/li&gt;&#xA;&lt;li&gt;NVIDIA 显卡，6GB+ 显存（推荐 8GB+）&lt;/li&gt;&#xA;&lt;li&gt;约 15GB 磁盘空间存放模型&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;部署comfyui&#34;&gt;部署ComfyUI&lt;/h3&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 1. 基本环境&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone https://github.com/comfyanonymous/ComfyUI.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 2. 可选：使用conda管理python版本和依赖环境&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;conda create -n py313 &lt;span style=&#34;color:#bb60d5&#34;&gt;python&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;3.13&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;conda activate py313&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 3. 如果有Nvidia GPU:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install -r requirements.txt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 4. 启动&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 如果只有CPU，那么 python main.py --listen 0.0.0.0 --cpu&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;python main.py --listen 0.0.0.0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;启动后，打开浏览器访问 &lt;code&gt;http://127.0.0.1:8188&lt;/code&gt; 即可使用z-image。&lt;/p&gt;&#xA;&lt;h3 id=&#34;模型下载&#34;&gt;模型下载&lt;/h3&gt;&#xA;&lt;p&gt;首次打开z-image，需要下载三个核心文件（国内可将 &lt;code&gt;huggingface.co&lt;/code&gt; 替换为 &lt;code&gt;hf-mirror.com&lt;/code&gt;），界面上会有对应地址的提示，也可以直接使用以下命令完成：&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM：使用Ollama访问本地大模型</title>
      <link>http://blog.memcd.com/posts/ai/2025-1109-llm-ollama/</link>
      <pubDate>Sun, 09 Nov 2025 10:08:55 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1109-llm-ollama/</guid>
      <description>&lt;h1 id=&#34;llm使用ollama访问本地大模型&#34;&gt;LLM：使用Ollama访问本地大模型&lt;/h1&gt;&#xA;&lt;p&gt;上一篇文章《&lt;a href=&#34;http://blog.memcd.com/posts/ai/2025-1109-llm-api&#34;&gt;LLM：使用API访问在线大模型&lt;/a&gt;》中介绍了通过API访问大模型的方法，这种方法可以调用当今最强大的大语言模型。但是在很多私域部署场景中，用户对数据保密性有要求，不允许数据离开公司，甚至没有互联网，这种情况在线访问的方式就无法使用了，需要调用本地的大模型来满足需求。&lt;/p&gt;&#xA;&lt;p&gt;调用本地的大模型有一个非常好用的工具是Ollama，由前 Docker 核心开发者 Jeremy Howard 和团队开发，所以用起来也非常像Docker，比如这样一个命令就会拉取Deepseek-R1模型并且在本地运行起来：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ollama run deepseek-r1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;本文实验中使用的Ollama的版本是：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ollama --version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ollama version is 0.12.10&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ollama支持三种调用方法：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;命令行调用（CLI）&lt;/li&gt;&#xA;&lt;li&gt;HTTP API调用（例如通过curl或者任意语言，普适性最强）&lt;/li&gt;&#xA;&lt;li&gt;使用开发语言通过SDK调用（对开发者来说比HTTP方式更友好）&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;cli调用&#34;&gt;CLI调用&lt;/h2&gt;&#xA;&lt;p&gt;ollama run deepseek-r1:32b&lt;/p&gt;&#xA;&lt;p&gt;非常简单，作为普通用户这样用就可以了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;http-api调用&#34;&gt;HTTP API调用&lt;/h2&gt;&#xA;&lt;p&gt;下面通过curl来调用Ollama的HTTP接口。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl -X POST http://localhost:11434/api/chat -H &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; -d &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#39;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;model&amp;#34;: &amp;#34;glm4:9b&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;messages&amp;#34;: [{&amp;#34;role&amp;#34;: &amp;#34;user&amp;#34;, &amp;#34;content&amp;#34;: &amp;#34;一句话介绍下大模型&amp;#34;}],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;stream&amp;#34;: false,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;format&amp;#34;: &amp;#34;json&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;}&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;输出&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;model&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;glm4:9b&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;created_at&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;2025-11-10T07:12:11.290003031Z&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;message&amp;#34;&lt;/span&gt;:{&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;role&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;assistant&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;{\&amp;#34;response\&amp;#34;: \&amp;#34;使用人工智能技术，通过海量数据训练，能够理解和生成自然语言、图像等多元信息的技术和模型。例如，智谱AI模型是一种高级的深度学习模型，能处理复杂任务，如文本生成、机器翻译和自然语言理解等。`）。”}。以下是一些关于人工智能的相关知识，以供参考：1. 自然语言理解（NLP）是人工智能的一种应用，....（略）....，我们有理由相信，未来将带来更美好的生活和工作环境。因此，我们要紧密关注这个领域的研究进展和应用，共同推动我国科技创新和社会发展。在未来的发展中，我们要积极拥抱新技术、新机遇，勇于开拓创新，为人类的发展做出更大的贡献。谢谢您对我们问题的关注和支持，我们将继续努力为您提供更多有价值的信息和知识。如有其他问题或需要进一步了解，请随时提出。祝您生活愉快！\&amp;#34;}&amp;#34;&lt;/span&gt;},&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;done_reason&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;stop&amp;#34;&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;done&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;true&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;total_duration&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;5796277912&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;load_duration&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;31929144&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;prompt_eval_count&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;11&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;prompt_eval_duration&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;14599361&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;eval_count&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;612&lt;/span&gt;,&lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;eval_duration&amp;#34;&lt;/span&gt;:&lt;span style=&#34;color:#40a070&#34;&gt;5749282129&lt;/span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果&lt;code&gt;stream&lt;/code&gt;赋值为&lt;code&gt;true&lt;/code&gt;，那么在输出时会逐token返回多个json数据&lt;/p&gt;&#xA;&lt;p&gt;如果想看到推理过程，可以&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl http://localhost:11434/api/chat -d &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#39;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;model&amp;#34;: &amp;#34;deepseek-r1:8b&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;messages&amp;#34;: [{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;    &amp;#34;role&amp;#34;: &amp;#34;user&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;    &amp;#34;content&amp;#34;: &amp;#34;大模型深度思考的原理是什么?&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  }],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;think&amp;#34;: true,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  &amp;#34;stream&amp;#34;: false&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;}&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;输出（为方便阅读，后续的json输出都进行了格式化）&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM：使用API访问在线大模型</title>
      <link>http://blog.memcd.com/posts/ai/2025-1109-llm-api/</link>
      <pubDate>Sun, 09 Nov 2025 01:15:49 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1109-llm-api/</guid>
      <description>&lt;h1 id=&#34;llm使用api访问在线大模型&#34;&gt;LLM：使用API访问在线大模型&lt;/h1&gt;&#xA;&lt;p&gt;大语言模型从2022年底开始兴起，不到3年的发展，现在已经融入到工作、生活的方方面面，平时不管是用浏览器，还是AI IDE或者App，都可以方便地访问到各类大模型。&lt;/p&gt;&#xA;&lt;p&gt;如果想要进一步多一些控制权，可以使用API调用大模型，从而把大模型的能力集成到自己的应用中。&lt;/p&gt;&#xA;&lt;p&gt;通过API调用大模型是非常容易的，直接通过HTTP请求就可以实现调用，下面举两个例子说明。&lt;/p&gt;&#xA;&lt;h2 id=&#34;openai-api&#34;&gt;OpenAI API&lt;/h2&gt;&#xA;&lt;p&gt;OpenAI做得最早，所以OpenAI的API接口成为了事实上的大语言模型的接口标准，其他家的大语言模型都会兼容OpenAI的API接口以便可以让一个chatGPT的工具可以切换到自家的大模型来。&lt;/p&gt;&#xA;&lt;p&gt;调用OpenAI API跟把大象放进冰箱一样简单，大概分三步：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;创建开放平台账号，获取API Key&lt;/li&gt;&#xA;&lt;li&gt;通过API Key调用OpenAI API&lt;/li&gt;&#xA;&lt;li&gt;交钱&#xA;嗯，API调用是收费的。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h3 id=&#34;1获取api-key&#34;&gt;1、获取API Key&lt;/h3&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;获取 API Key&lt;/strong&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;访问 &lt;a href=&#34;https://platform.openai.com/&#34;&gt;OpenAI Platform&lt;/a&gt;，使用注册账号登录&lt;/li&gt;&#xA;&lt;li&gt;在 API Keys 页面创建新的 API Key&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h3 id=&#34;2curl调用&#34;&gt;2、curl调用&lt;/h3&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#bb60d5&#34;&gt;OPENAI_API_KEY&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#39;你创建的Key写在这里&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;curl https://api.openai.com/v1/responses &lt;span style=&#34;color:#4070a0;font-weight:bold&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  -H &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#4070a0;font-weight:bold&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  -H &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;Authorization: Bearer &lt;/span&gt;&lt;span style=&#34;color:#bb60d5&#34;&gt;$OPENAI_API_KEY&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#4070a0;font-weight:bold&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  -d &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#39;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;    &amp;#34;model&amp;#34;: &amp;#34;gpt-4o-mini&amp;#34;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;    &amp;#34;input&amp;#34;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;      {&amp;#34;role&amp;#34;: &amp;#34;user&amp;#34;, &amp;#34;content&amp;#34;: [{&amp;#34;type&amp;#34;: &amp;#34;text&amp;#34;, &amp;#34;text&amp;#34;: &amp;#34;Hello!&amp;#34;}]}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;    ]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;  }&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;3程序调用&#34;&gt;3、程序调用&lt;/h3&gt;&#xA;&lt;p&gt;以Python为例，首先安装 SDK&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pip install openai&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后就可以调用了：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;from&lt;/span&gt; &lt;span style=&#34;color:#0e84b5;font-weight:bold&#34;&gt;openai&lt;/span&gt; &lt;span style=&#34;color:#007020;font-weight:bold&#34;&gt;import&lt;/span&gt; OpenAI&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 生产环境一般要从配置文件读取Key&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;client &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; OpenAI(api_key&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;你创建的Key写在这里)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# API 调用&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;resp &lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt; client&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;responses&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;create(&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    model&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;gpt-4o-mini&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#007020&#34;&gt;input&lt;/span&gt;&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;[&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;role&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;system&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;: [{&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;text&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;text&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;你是一个AI技术专家。&amp;#34;&lt;/span&gt;}]},&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;role&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;: [{&lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;text&amp;#34;&lt;/span&gt;, &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;text&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;什么是机器学习？&amp;#34;&lt;/span&gt;}]}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    temperature&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#40a070&#34;&gt;0.7&lt;/span&gt;,          &lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 控制输出的随机性，0-2之间&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    max_output_tokens&lt;span style=&#34;color:#666&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#40a070&#34;&gt;1000&lt;/span&gt;     &lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 最大输出 token 数&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#60a0b0;font-style:italic&#34;&gt;# 获取回复&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#007020&#34;&gt;print&lt;/span&gt;(resp&lt;span style=&#34;color:#666&#34;&gt;.&lt;/span&gt;output_text)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;由于大模型技术发展飞快，OpenAI的API接口也在不断更新，很可能你在网上查到的示例代码并不能运行，所以最好的方法还是直接访问OpenAI官方的API文档：&#xA;&lt;a href=&#34;https://platform.openai.com/docs/quickstart&#34;&gt;https://platform.openai.com/docs/quickstart&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>LangChain: LangChain介绍</title>
      <link>http://blog.memcd.com/posts/ai/2025-1020-langchain-introduction/</link>
      <pubDate>Mon, 20 Oct 2025 23:41:38 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1020-langchain-introduction/</guid>
      <description>&lt;h1 id=&#34;langchain介绍&#34;&gt;LangChain介绍&lt;/h1&gt;&#xA;&lt;p&gt;LangChain、LangGraph都是LangChain公司的Agent代理产品，公司官网地址：https://www.langchain.com/&#xA;下面根据官网的介绍和文档，实验一下LangChain技术体系，首先看下概念。&lt;/p&gt;&#xA;&lt;h2 id=&#34;什么是langchain&#34;&gt;什么是LangChain&lt;/h2&gt;&#xA;&lt;p&gt;LangChain 是一个开源框架，具有预构建的代理架构和适用于任何模型或工具的集成，因此您可以构建随着生态系统发展而快速适应的代理。&lt;/p&gt;&#xA;&lt;h2 id=&#34;企业都用langchain做什么&#34;&gt;企业都用LangChain做什么？&lt;/h2&gt;&#xA;&lt;p&gt;这是LangChain官方的一个调查数据：&lt;/p&gt;&#xA;&lt;pre class=&#34;mermaid&#34;&gt;&#xA;  ---&#xA;config:&#xA;    xyChart:&#xA;        showDataLabel: true&#xA;    themeVariables:&#xA;        plotColorPalette: &amp;#39;#000000, #0000FF, #00FF00, #FF0000, #FF0000, #FF0000, #FF0000&amp;#39;&#xA;---&#xA;xychart&#xA;    title &amp;#34;代理最适合执行哪些任务&amp;#34;&#xA;    x-axis [A, B, C, D, E, F, G]&#xA;    y-axis &amp;#34;占比 (%)&amp;#34; 0 --&amp;gt; 60&#xA;    bar [58.2, 53.5, 45.8, 35.5, 33.8, 19.6, 2.9]&#xA;&lt;/pre&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;A: 研究与总结&lt;/li&gt;&#xA;&lt;li&gt;B: 个人助理 / 生产力任务&lt;/li&gt;&#xA;&lt;li&gt;C: 客户服务&lt;/li&gt;&#xA;&lt;li&gt;D: 代码生成&lt;/li&gt;&#xA;&lt;li&gt;E: 数据转换和丰富&lt;/li&gt;&#xA;&lt;li&gt;F: 互动游戏、讲故事或陪伴&lt;/li&gt;&#xA;&lt;li&gt;G: 其他&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;附件&#34;&gt;附件&lt;/h2&gt;&#xA;&lt;p&gt;LangChain团队的照片：&#xA;&lt;img src=&#34;https://cdn.prod.website-files.com/65b8cd72835ceeacd4449a53/68dcec9fe1fead6fc782eceb_2af460633e82454982017b4ff09bb360_Team%20photo.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;script src=&#34;https://cdnjs.cloudflare.com/ajax/libs/mermaid/11.10.0/mermaid.min.js&#34; integrity=&#34;sha512-K6kF9joFhakrUFd6H3b4JVp8rKz1F5tVHhPWbUQESnZhW/W5ztSzHPBfHq3p6NpmsXQjo6rCen2FqUl82TP6eg==&#34; crossorigin=&#34;anonymous&#34; referrerpolicy=&#34;no-referrer&#34;&gt;&lt;/script&gt;</description>
    </item>
    <item>
      <title>MCP：使用MCP访问MySQL数据库</title>
      <link>http://blog.memcd.com/posts/ai/2025-1012-mcp-mysql/</link>
      <pubDate>Sun, 12 Oct 2025 20:41:28 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-1012-mcp-mysql/</guid>
      <description>&lt;h1 id=&#34;mcp使用mcp访问mysql数据库&#34;&gt;MCP：使用MCP访问MySQL数据库&lt;/h1&gt;&#xA;&lt;p&gt;该服务使大语言模型能够连接MySQL数据库并执行只读查询。下面开始实验一下。&lt;/p&gt;&#xA;&lt;h2 id=&#34;环境准备&#34;&gt;环境准备&lt;/h2&gt;&#xA;&lt;p&gt;可以按照上一篇文章《MCP：使用MCP访问PostgreSQL数据库》的方法进行MCP配置，或者也可以干脆直接让大模型自己完成MCP配置。参考提示词：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;“WindSurf的MCP配置文件在哪里”&lt;/li&gt;&#xA;&lt;li&gt;“在这个MCP配置文件中，增加MySQL数据库的配置”&lt;/li&gt;&#xA;&lt;li&gt;“测试MySQL的MCP配置是否正确”&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;这样，大模型自己就能完成MCP配置了，不需要自己再去看MCP的配置说明文档。&lt;/p&gt;&#xA;&lt;h2 id=&#34;对话数据库信息&#34;&gt;对话数据库信息&lt;/h2&gt;&#xA;&lt;h3 id=&#34;近期有无用户登录&#34;&gt;近期有无用户登录？&lt;/h3&gt;&#xA;&lt;p&gt;同样，可以使用MCP协议来查询数据库中记录的用户登录系统的情况。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;近期有无用户登录？&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;大模型自动调用MCP后回复：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;我来查询一下近期的用户登录情况。让我检查 user 和 user_token 表来了解用户活动。&#xA;&#xA;查询用户表结构了解登录相关字段&#xA;查询近期用户登录记录&#xA;分析用户活动情况&#xA;&#xA;根据查询结果，近期确实有用户登录活动：&#xA;&#xA;### 用户登录情况&#xA;&#xA;- **活跃用户**: 1个用户（admin）&#xA;- **总Token数**: 3个&#xA;- **用户ID**: 123456789&#xA;&#xA;### 登录详情&#xA;&#xA;| 系统模块 | Token过期时间 | 状态 |&#xA;|---------|--------------|------|&#xA;| SystemA | 2025-09-19 11:26:05 | Active |&#xA;| SystemB | 2025-09-15 16:25:38 | Active |&#xA;| SystemC | 2025-09-08 13:12:59 | Expired |&#xA;&#xA;### 分析结果&#xA;&#xA;- **最近登录**: 最新的token创建时间显示用户在近期有登录活动&#xA;- **活跃状态**: 目前有2个活跃的token，说明用户在不同系统模块中都有登录会话&#xA;- **系统使用**: 用户主要使用了3个系统模块：&#xA;  - SystemA（A系统）- 当前活跃&#xA;  - SystemB（B系统）- 当前活跃&#xA;  - SystemC（C系统）- 已过期&#xA;&#xA;**结论**: 是的，近期有用户登录，admin用户目前仍有活跃的登录会话。&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;AI通过MCP自动查询了数据库的用户登录信息，并且自动总结了用户登录过哪些子系统。期间，我并未向用户提供表名和表的用途等信息，大模型自己通过对表名使用的词语，理解了其实际含义。如果数据库在设计时符合常见的标准方法，那么大模型就可以像一名有经验的工程师一样，一眼就能理解数据库结构和含义。&lt;/p&gt;</description>
    </item>
    <item>
      <title>MCP: 和AI的沟通记录</title>
      <link>http://blog.memcd.com/posts/ai/2025-0914-mcp-llm/</link>
      <pubDate>Sun, 14 Sep 2025 14:01:27 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-0914-mcp-llm/</guid>
      <description>&lt;h1 id=&#34;以下是和ai的沟通记录&#34;&gt;以下是和AI的沟通记录&lt;/h1&gt;&#xA;&lt;h2 id=&#34;ai的函数调用function-calling技术&#34;&gt;AI的“函数调用”（Function Calling）技术&lt;/h2&gt;&#xA;&lt;p&gt;好的，我们来详细介绍一下 AI 的“函数调用”（Function Calling）技术。&lt;/p&gt;&#xA;&lt;p&gt;什么是AI的“函数调用”（Function Calling）？&lt;/p&gt;&#xA;&lt;p&gt;“函数调用”（Function Calling），也常被称为“工具使用”（Tool Use）或“插件”（Plugins），是现代大型语言模型（LLMs）的一项强大能力。它允许 LLM 不仅仅是生成文本，更能够识别用户意图，判断何时需要调用外部工具或 API 来获取信息或执行操作，并生成调用这些工具所需的规范化参数。&lt;/p&gt;&#xA;&lt;p&gt;简单来说，就是让 LLM 能够像程序员一样，理解什么时候需要调用一个“函数”，以及这个“函数”需要哪些“参数”才能运行，然后把这些信息“告诉”给一个外部系统去实际执行。&lt;/p&gt;&#xA;&lt;p&gt;为什么需要函数调用？&lt;/p&gt;&#xA;&lt;p&gt;传统的 LLM 主要擅长文本生成和理解，但它们有几个局限性：&lt;/p&gt;&#xA;&lt;p&gt;1、  缺乏实时信息： LLM 的知识库是基于其训练数据，通常不是实时的。它们不知道最新的新闻、股价、天气等。&#xA;2、  无法执行外部操作： LLM 无法直接发送邮件、订购商品、查询数据库、控制设备等。&#xA;3、  幻觉（Hallucination）： 当 LLM 无法获取准确信息时，可能会“编造”答案。&#xA;4、  知识边界： LLM 只能回答其训练数据中包含的问题，对于特定领域或内部系统的数据无能为力。&lt;/p&gt;&#xA;&lt;p&gt;函数调用技术正是为了弥补这些局限性。通过调用外部工具，LLM 可以：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;获取实时和准确的信息： 调用天气 API、股票 API、数据库查询等。&lt;/li&gt;&#xA;&lt;li&gt;执行实际操作： 调用邮件发送 API、日程安排 API、智能家居控制 API 等。&lt;/li&gt;&#xA;&lt;li&gt;扩展知识边界： 访问企业内部数据库、专属知识库等。&lt;/li&gt;&#xA;&lt;li&gt;提高回答的准确性和可靠性： 基于外部工具返回的真实数据进行回复。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;函数调用的工作原理（简化流程）：&lt;/p&gt;&#xA;&lt;p&gt;1、  定义工具/函数： 开发者首先需要向 LLM 描述（通常以 JSON Schema 格式）哪些外部工具是可用的，以及这些工具的功能、名称和所需参数。这就像给 LLM 一本“工具手册”。&#xA;* 示例工具定义： 一个天气查询工具，函数名为 &lt;code&gt;get_current_weather&lt;/code&gt;，需要一个 &lt;code&gt;location&lt;/code&gt; 参数。&#xA;&lt;code&gt;json { &amp;quot;name&amp;quot;: &amp;quot;get_current_weather&amp;quot;, &amp;quot;description&amp;quot;: &amp;quot;获取指定地点的当前天气信息&amp;quot;, &amp;quot;parameters&amp;quot;: { &amp;quot;type&amp;quot;: &amp;quot;object&amp;quot;, &amp;quot;properties&amp;quot;: { &amp;quot;location&amp;quot;: { &amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;, &amp;quot;description&amp;quot;: &amp;quot;地点，例如：旧金山，东京&amp;quot; } }, &amp;quot;required&amp;quot;: [&amp;quot;location&amp;quot;] } } &lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>MCP：使用MCP访问PostgreSQL数据库</title>
      <link>http://blog.memcd.com/posts/ai/2025-0913-mcp-postgre/</link>
      <pubDate>Sat, 13 Sep 2025 19:15:20 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-0913-mcp-postgre/</guid>
      <description>&lt;!-- 大语言模型可以根据用户需求，调用PostgreSQLMCP等来获取数据库信息。 --&gt;&#xA;&lt;h1 id=&#34;mcp使用mcp访问postgresql数据库&#34;&gt;MCP：使用MCP访问PostgreSQL数据库&lt;/h1&gt;&#xA;&lt;h2 id=&#34;简介&#34;&gt;简介&lt;/h2&gt;&#xA;&lt;p&gt;上一篇文章《MCP: 什么是MCP》已经介绍了MCP的基本概念，下面来实操一个MCP服务的使用。&lt;/p&gt;&#xA;&lt;p&gt;PostgreMCP 这个服务可以使大语言模型能够检查数据库模式并执行只读查询。下面开始实验一下。&lt;/p&gt;&#xA;&lt;h2 id=&#34;环境准备&#34;&gt;环境准备&lt;/h2&gt;&#xA;&lt;p&gt;安装过程会自动从网络拉包，例如：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;npx -y @modelcontextprotocol/server-postgres postgresql://username:password@IP:5432/dbname&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果使用的是docker也是同理，所以国内网络不好的话有可能一次装不成功，多试几次即可。&lt;/p&gt;&#xA;&lt;!-- 再构建一个测试用的postgreSQL数据库，创建一个登录记录表并填充测试数据。 --&gt;&#xA;&lt;h3 id=&#34;windsurf&#34;&gt;Windsurf&lt;/h3&gt;&#xA;&lt;p&gt;安装：&lt;code&gt;Plugin Store / PostgreSQL / Install&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;配置：点击PostgreSQL，或者在对话框的MCP中找到PostgreSQL，点击Configure，粘贴配置（会自动生成）&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;postgresql&amp;#34;&lt;/span&gt;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;command&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;npx&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;args&amp;#34;&lt;/span&gt;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;-y&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;@modelcontextprotocol/server-postgres&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#4070a0&#34;&gt;&amp;#34;postgresql://username:password@IP:5432/dbname&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#062873;font-weight:bold&#34;&gt;&amp;#34;env&amp;#34;&lt;/span&gt;: {}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;配置格式的说明来自于：&lt;code&gt;https://github.com/modelcontextprotocol/servers-archived/tree/main/src/postgres&lt;/code&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;cursor&#34;&gt;cursor&lt;/h3&gt;&#xA;&lt;p&gt;cursor用户可以在如下界面上安装：&#xA;&lt;code&gt;cursor / Setting / MCP / Add new global MCP Server&lt;/code&gt;&#xA;填写上面的json配置即可&lt;/p&gt;&#xA;&lt;h2 id=&#34;使用方法&#34;&gt;使用方法&lt;/h2&gt;&#xA;&lt;p&gt;配置好Postgre MCP，就可以使用自然语言对PostgreSQL数据库进行查询操作了。&lt;/p&gt;&#xA;&lt;h3 id=&#34;用法举例询问系统登录情况&#34;&gt;用法举例：询问系统登录情况&lt;/h3&gt;&#xA;&lt;h4 id=&#34;prompt&#34;&gt;Prompt&lt;/h4&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f0f0f0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;帮我看下数据库记录，今天都有哪些用户登录了系统？&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;ai自动调用mcp执行数据库查询&#34;&gt;AI自动调用MCP执行数据库查询&lt;/h4&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;我需要查找用户登录记录。首先，我需要找到存储登录记录的表。让我查询数据库中可能包含登录信息的表。&#xA;&#xA;MCP Tool: postgresql / query&#xA;Ran with these arguments:&#xA;{&#xA;  &amp;#34;sql&amp;#34;: &amp;#34;SELECT table_name FROM information_schema.tables WHERE table_schema = &amp;#39;public&amp;#39; AND (table_name LIKE &amp;#39;%login%&amp;#39; OR table_name LIKE &amp;#39;%log%&amp;#39; OR table_name LIKE &amp;#39;%user%&amp;#39; OR table_name LIKE &amp;#39;%auth%&amp;#39;);&amp;#34;&#xA;}&#xA;&#xA;Output&#xA;[&#xA;  {&#xA;    &amp;#34;table_name&amp;#34;: &amp;#34;log&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;table_name&amp;#34;: &amp;#34;user_role&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;table_name&amp;#34;: &amp;#34;user&amp;#34;&#xA;  }&#xA;]&#xA;&#xA;我找到了几个可能包含登录信息的表：log、user_role 和 user。其中 log 表最可能包含登录记录，让我查询今天的登录记录。&#xA;&#xA;首先，我需要查看 log 表的结构，以确定它包含哪些字段：&#xA;&#xA;MCP Tool: postgresql / query&#xA;Ran with these arguments:&#xA;{&#xA;  &amp;#34;sql&amp;#34;: &amp;#34;SELECT column_name FROM information_schema.columns WHERE table_schema = &amp;#39;public&amp;#39; AND table_name = &amp;#39;log&amp;#39;;&amp;#34;&#xA;}&#xA;&#xA;Output&#xA;[&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_id&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_title&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_content&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_type&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;created_at&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_user&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;column_name&amp;#34;: &amp;#34;log_ip&amp;#34;&#xA;  }&#xA;]&#xA;&#xA;现在我了解了 log 表的结构，它包含了用户登录所需的字段，如 log_user（用户）、log_ip（IP地址）、created_at（创建时间）等。让我查询今天的登录记录。&#xA;&#xA;今天是 2025-05-29，我需要查找今天的登录记录。我将使用 UNIX 时间戳来过滤今天的记录：&#xA;&#xA;{&#xA;  &amp;#34;sql&amp;#34;: &amp;#34;SELECT log_id, log_title, log_content, log_type, log_user, log_ip, to_timestamp(created_at) as login_time \nFROM log \nWHERE log_title LIKE &amp;#39;%登录%&amp;#39; \nAND created_at &amp;gt;= extract(epoch from date_trunc(&amp;#39;day&amp;#39;, current_date))\nORDER BY created_at DESC;&amp;#34;&#xA;}&#xA;&#xA;Output&#xA;[]&#xA;&#xA;看起来今天（2025-05-29）还没有用户登录记录。让我尝试查看最近几天的登录记录，以便为您提供更有用的信息：&#xA;&#xA;{&#xA;  &amp;#34;sql&amp;#34;: &amp;#34;SELECT log_id, log_title, log_content, log_type, log_user, log_ip, to_timestamp(created_at) as login_time \nFROM log \nWHERE log_title LIKE &amp;#39;%登录%&amp;#39; \nORDER BY created_at DESC\nLIMIT 10;&amp;#34;&#xA;}&#xA;&#xA;Output&#xA;&#xA;[&#xA;  {&#xA;    &amp;#34;log_id&amp;#34;: &amp;#34;160867d60986804408259a32a3935817&amp;#34;,&#xA;    &amp;#34;log_title&amp;#34;: &amp;#34;用户登录&amp;#34;,&#xA;    &amp;#34;log_content&amp;#34;: &amp;#34;用户（admin）登录&amp;#34;,&#xA;    &amp;#34;log_type&amp;#34;: &amp;#34;3&amp;#34;,&#xA;    &amp;#34;log_user&amp;#34;: &amp;#34;admin&amp;#34;,&#xA;    &amp;#34;log_ip&amp;#34;: &amp;#34;192.168.0.2&amp;#34;,&#xA;    &amp;#34;login_time&amp;#34;: &amp;#34;2025-05-28T05:41:47.000Z&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;log_id&amp;#34;: &amp;#34;38c1b815a6ba3979920039df787ccfbb&amp;#34;,&#xA;    &amp;#34;log_title&amp;#34;: &amp;#34;用户登录&amp;#34;,&#xA;    &amp;#34;log_content&amp;#34;: &amp;#34;用户（admin）登录&amp;#34;,&#xA;    &amp;#34;log_type&amp;#34;: &amp;#34;3&amp;#34;,&#xA;    &amp;#34;log_user&amp;#34;: &amp;#34;admin&amp;#34;,&#xA;    &amp;#34;log_ip&amp;#34;: &amp;#34;192.168.0.2&amp;#34;,&#xA;    &amp;#34;login_time&amp;#34;: &amp;#34;2025-05-28T05:22:57.000Z&amp;#34;&#xA;  },&#xA;  {&#xA;    &amp;#34;log_id&amp;#34;: &amp;#34;ec4b34e46106fb1b2a826e0c6f224595&amp;#34;,&#xA;    &amp;#34;log_title&amp;#34;: &amp;#34;用户登录&amp;#34;,&#xA;    &amp;#34;log_content&amp;#34;: &amp;#34;用户（admin）登录&amp;#34;,&#xA;    &amp;#34;log_type&amp;#34;: &amp;#34;3&amp;#34;,&#xA;    &amp;#34;log_user&amp;#34;: &amp;#34;admin&amp;#34;,&#xA;    &amp;#34;log_ip&amp;#34;: &amp;#34;192.168.0.2&amp;#34;,&#xA;    &amp;#34;login_time&amp;#34;: &amp;#34;2025-05-28T01:20:25.000Z&amp;#34;&#xA;  }&#xA;]&#xA;&#xA;用户登录记录查询结果&#xA;根据查询结果，今天（2025-05-29）暂时没有用户登录系统的记录。&#xA;&#xA;最近的登录记录是在昨天（2025-05-28）：&#xA;&#xA;| 登录时间 | 用户名 | IP地址 | 操作内容 | &#xA;|---------|-------|-------|---------| &#xA;| 2025-05-28 13:41:47 | admin | 192.168.0.2 | 用户登录 | &#xA;| 2025-05-28 13:22:57 | admin | 192.168.0.2 | 用户登录 | &#xA;| 2025-05-28 09:20:25 | admin | 192.168.0.2 | 用户登录 |&#xA;&#xA;所有最近的登录都是由超级管理员（admin）账户从同一个IP地址（192.168.0.2）进行的。&#xA;&#xA;需要我查询更早的登录记录或其他类型的系统操作记录吗？&#xA;&#xA;&#xA;Credits spent: 1 credit&#xA;Tool calls: 4 calls&#xA;Files changed: 0 files changed&#xA;Terminals created: 0 processes run&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;那么问题来了&#34;&gt;那么问题来了&lt;/h2&gt;&#xA;&lt;p&gt;AI是如何知道什么问题需要使用MCP协议，什么问题不使用的？&lt;/p&gt;</description>
    </item>
    <item>
      <title>MCP: 什么是MCP</title>
      <link>http://blog.memcd.com/posts/ai/2025-0908-mcp-introduction/</link>
      <pubDate>Mon, 08 Sep 2025 20:50:40 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2025-0908-mcp-introduction/</guid>
      <description>&lt;h1 id=&#34;mcp-什么是mcp&#34;&gt;MCP: 什么是MCP&lt;/h1&gt;&#xA;&lt;h2 id=&#34;介绍&#34;&gt;介绍&lt;/h2&gt;&#xA;&lt;p&gt;MCP是Model Context Protocol的缩写，直译就是模型上下文协议，也就是连接大语言模型上下文的协议。&#xA;详细介绍请看官方文档：https://anthropic.com/news/model-context-protocol&#xA;以及：https://modelcontextprotocol.io/docs/getting-started/intro&#xA;MCP协议由anthropic公司（Claude的公司）提出。&lt;/p&gt;&#xA;&lt;h3 id=&#34;为什么需要mcp&#34;&gt;为什么需要MCP&lt;/h3&gt;&#xA;&lt;p&gt;大语言模型虽然学习了大量的通用数据，但是对于用户自己的数据是一无所知的。&#xA;因为大模型在业务应用中，是浮于表面的，没法深入到用户业务内部，也无法和其他的系统打通。&lt;/p&gt;&#xA;&lt;p&gt;MCP就是为解决这个问题而生，通过将AI助手连接到数据所在系统（包括内容存储库、业务工具和开发环境），解决模型与数据隔绝的问题。&lt;/p&gt;&#xA;&lt;p&gt;这个连接的协议就是MCP。&lt;/p&gt;&#xA;&lt;p&gt;也就是说，MCP是用来连接大模型和数据的。&lt;/p&gt;&#xA;&lt;h3 id=&#34;一些mcp&#34;&gt;一些MCP&lt;/h3&gt;&#xA;&lt;p&gt;下面从MCP store摘抄几个MCP的说明，有助于理解MCP的作用：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Memory 让大模型可以在聊天中记住有关用户的信息&lt;/li&gt;&#xA;&lt;li&gt;Puppeteer 该服务器使llm能够在真实的浏览器环境中与网页交互，截取屏幕截图和执行JavaScript&lt;/li&gt;&#xA;&lt;li&gt;Fetch Web内容获取和转换，以有效地使用LLM&lt;/li&gt;&#xA;&lt;li&gt;PostgreSQL 提供对PostgreSQL数据库的只读访问。该服务器使llm能够检查数据库模式并执行只读查询&lt;/li&gt;&#xA;&lt;li&gt;Slack 使Claude能够与Slack工作区进行交互&lt;/li&gt;&#xA;&lt;li&gt;Google Maps 位置服务，方向和地点细节&lt;/li&gt;&#xA;&lt;li&gt;Notion 和Notion的工作区、页面、数据库和注释进行交互&lt;/li&gt;&#xA;&lt;li&gt;SonarQube 用于代码质量和安全分析&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;工作原理&#34;&gt;工作原理&lt;/h3&gt;&#xA;&lt;p&gt;通过这一张图就看能懂MCP的工作原理了：本地的IDE，例如cursor，充当客户端，连接本地的MCP服务器，MCP服务器连接数据库实现功能。本地的MCP服务器用户无需操心，由IDE通过npx或者docker自动启动。&lt;/p&gt;&#xA;&lt;p&gt;如下图：&lt;/p&gt;&#xA;&lt;pre class=&#34;mermaid&#34;&gt;&#xA;  graph LR&#xA;    subgraph &amp;#34;Your Computer&amp;#34;&#xA;        A[&amp;#34;Host with MCP Client: Claude, IDEs, Tools&amp;#34;] -- &amp;#34;MCP Protocol&amp;#34; --&amp;gt; B(&amp;#34;MCP Server A&amp;#34;)&#xA;        A -- &amp;#34;MCP Protocol&amp;#34; --&amp;gt; C(&amp;#34;MCP Server B&amp;#34;)&#xA;        A -- &amp;#34;MCP Protocol&amp;#34; --&amp;gt; D(&amp;#34;MCP Server C&amp;#34;)&#xA;&#xA;        B --&amp;gt; E[&amp;#34;Local Data Source A&amp;#34;]&#xA;        C --&amp;gt; F[&amp;#34;Local Data Source B&amp;#34;]&#xA;    end&#xA;&#xA;    subgraph &amp;#34;Internet&amp;#34;&#xA;        D -- &amp;#34;Web APIs&amp;#34; --&amp;gt; H[&amp;#34;Remote Service C&amp;#34;]&#xA;    end&#xA;&lt;/pre&gt;&#xA;&#xA;&lt;p&gt;下面就来实操一下。&lt;/p&gt;</description>
    </item>
    <item>
      <title>一次AI辅助调试记录</title>
      <link>http://blog.memcd.com/posts/ai/2024-1126-ai-debug/</link>
      <pubDate>Tue, 26 Nov 2024 22:10:32 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2024-1126-ai-debug/</guid>
      <description>&lt;h1 id=&#34;一次ai辅助调试记录&#34;&gt;一次AI辅助调试记录&lt;/h1&gt;&#xA;&lt;p&gt;由于家里的网络限制，我无法在线安装ollama，所以选择了离线安装的方法。但是离线安装后默认不提供systemd守护进程配置文件。&#xA;于是我自己手写了一个service文件，但是发现它无法正常工作，于是我叫来 WindSurf + Claude 3.5 Sonnet 帮我修改下配置。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;2024-1126-ai-debug.png&#34; alt=&#34;windsurf&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;调试过程&#34;&gt;调试过程&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;Me&lt;/code&gt;: 这个配置文件无法正常工作，帮我看看为什么&lt;/p&gt;&#xA;&lt;p&gt;让我查看一下 ollama.service 文件的内容，看看配置有什么问题。&lt;/p&gt;&#xA;&lt;p&gt;Analyzed ollama.service&lt;br&gt;&#xA;我发现了几个可能的问题：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;ExecStart 行中的命令路径被不必要地加上了引号。在 systemd 服务文件中，命令路径不应该用引号括起来。这应该改为：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;code&gt;ExecStart=/usr/bin/ollama serve&lt;/code&gt;&lt;/p&gt;&#xA;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;需要确保：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;ollama 用户和组已经创建&lt;/li&gt;&#xA;&lt;li&gt;/usr/bin/ollama 文件存在且有执行权限&lt;/li&gt;&#xA;&lt;li&gt;ollama 用户对必要的目录和文件有适当的权限&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;让我帮你修复这个配置文件：&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Edited ollama.service +1 -2  18 Open diff&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;让我们检查一下 ollama 是否已正确安装：&lt;/p&gt;&#xA;&lt;p&gt;Ran terminal command&#xA;/data/ollama&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ which ollama&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Stdout&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;/usr/bin/ollama&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ran terminal command&#xA;/data/ollama&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ id ollama&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Stdout&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;uid=997(ollama) gid=984(ollama) 组=984(ollama)&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;好的，我已经:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;修复了服务文件中的语法错误（移除了 ExecStart 中的不必要引号）&lt;/li&gt;&#xA;&lt;li&gt;验证了 ollama 命令确实存在于 /usr/bin/ollama&lt;/li&gt;&#xA;&lt;li&gt;确认了 ollama 用户和组都已正确创建&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;现在你可以尝试重新加载和启动服务：&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI能力实验-英语作业</title>
      <link>http://blog.memcd.com/posts/cs/2024-1001-ai-test-1/</link>
      <pubDate>Tue, 01 Oct 2024 12:41:33 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2024-1001-ai-test-1/</guid>
      <description>&lt;h1 id=&#34;ai能力实验-英语作业&#34;&gt;AI能力实验-英语作业&lt;/h1&gt;&#xA;&lt;!-- 正确答案：go --&gt;&#xA;&lt;h2 id=&#34;问题&#34;&gt;问题&lt;/h2&gt;&#xA;&lt;p&gt;She can （go/goes） to the school with her fatcher every day。这里的括号里应该写go还是goes？&lt;/p&gt;&#xA;&lt;h2 id=&#34;gemini&#34;&gt;gemini&lt;/h2&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;这个句子中，括号里的动词应该用goes。&#xA;&#xA;原因分析：&#xA;&#xA;    主语是第三人称单数: &amp;#34;She&amp;#34; 是第三人称单数，表示&amp;#34;她&amp;#34;。&#xA;    一般现在时: 句子描述的是每天发生的事情，属于一般现在时。&#xA;    一般现在时第三人称单数: 在一般现在时中，当主语是第三人称单数时，谓语动词要加 &amp;#34;-s&amp;#34; 或 &amp;#34;-es&amp;#34;。&#xA;&#xA;所以，正确的句子是：&#xA;&#xA;    She goes to the school with her father every day.&#xA;&#xA;翻译: 她每天和爸爸一起上学。&#xA;&#xA;总结：&#xA;&#xA;判断动词形式时，要综合考虑主语的人称、数和时态。这个句子中，由于主语是&amp;#34;she&amp;#34;，时态是一般现在时，所以动词要用第三人称单数形式&amp;#34;goes&amp;#34;。&#xA;&#xA;希望这个解释对你有帮助！&#xA;&#xA;如果你还有其他问题，欢迎随时提出。&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;claude-instant-100k&#34;&gt;Claude-instant-100k&lt;/h2&gt;&#xA;&lt;p&gt;在这个句子中,&amp;ldquo;She&amp;quot;是主语,所以应使用第三人称单数动词的形式&amp;quot;goes&amp;rdquo;。&lt;/p&gt;&#xA;&lt;p&gt;正确填充括号内词应是:&lt;/p&gt;&#xA;&lt;p&gt;She can goes to the school with her father every day.&lt;/p&gt;&#xA;&lt;p&gt;解释如下:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;quot;She&amp;quot;是第三人称单数主语。&#xA;&#xA;根据主语与动词的数态一致规则,应使用第三人称单数形式的动词&amp;quot;goes&amp;quot;。&#xA;&#xA;&amp;quot;Go&amp;quot;是基本形,用于非第三人称或问句。第三人称单数应是&amp;quot;goes&amp;quot;。&#xA;&#xA;&amp;quot;Can&amp;quot;后面的动词保持原形,所以用&amp;quot;goes&amp;quot;而不是&amp;quot;can go&amp;quot;。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;所以总的来说,由于主语是单数第三人称&amp;quot;She&amp;quot;,括号内只能填&amp;quot;goes&amp;quot;,使句子的人称与数态符合规则。&lt;/p&gt;&#xA;&lt;h2 id=&#34;gpt-4o&#34;&gt;GPT-4o&lt;/h2&gt;&#xA;&lt;p&gt;这里的括号里应该写 go。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI聊天：使用chatGPT聊天到底要花多少钱？</title>
      <link>http://blog.memcd.com/posts/cs/2023-0617-ai-how-much/</link>
      <pubDate>Sat, 17 Jun 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0617-ai-how-much/</guid>
      <description>&lt;h1 id=&#34;使用chatgpt聊天到底要花多少钱&#34;&gt;使用chatGPT聊天到底要花多少钱？&lt;/h1&gt;&#xA;&lt;p&gt;摘要：我们来算算现在的chatGPT价格实际到底是多少&lt;/p&gt;&#xA;&lt;p&gt;OpenAI在6月13日刚刚进行了大规模降价和升级，text-embedding-ada-002降价95%，GPT-3.5-turbo降价了25%，GPT4最高可支持32K文本。&lt;/p&gt;&#xA;&lt;p&gt;在OpenAI的官网（ &lt;a href=&#34;https://openai.com/pricing&#34;&gt;https://openai.com/pricing&lt;/a&gt; ）上，对chatGPT的价格计算方式有详细的说明。但是其价格是以token来计算的，我们来算算现在的价格实际到底是多少。&lt;/p&gt;&#xA;&lt;h2 id=&#34;官网聊天&#34;&gt;官网聊天&lt;/h2&gt;&#xA;&lt;p&gt;官方网页上聊天是不花钱的，收费项目主要针对API用户。API用户默认赠送5美元额度。&lt;/p&gt;&#xA;&lt;h2 id=&#34;大语言模型&#34;&gt;大语言模型&lt;/h2&gt;&#xA;&lt;h3 id=&#34;计算方法&#34;&gt;计算方法&lt;/h3&gt;&#xA;&lt;p&gt;测试样本：&#xA;Multiple models, each with different capabilities and price points. Prices are per 1,000 tokens. You can think of tokens as pieces of words, where 1,000 tokens is about 750 words. This paragraph is 35 tokens.&#xA;官方的样本文字中说明了，这段测试样本的长度为35个tokens。&lt;/p&gt;&#xA;&lt;p&gt;ChatGPT使用的tokenizer是Byte-Pair Encoding(BPE)算法，有三种方法可以近似计算token值：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Transformers&lt;/li&gt;&#xA;&lt;li&gt;OpenAI tiktoken&lt;/li&gt;&#xA;&lt;li&gt;单词数 / 0.75&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;使用Transformers方法对测试样本进行tokens计算：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;def get_transformers_tokens(text: str, encoding_name: str) -&amp;gt; int:&#xA;    tokenizer = transformers.AutoTokenizer.from_pretrained(encoding_name)&#xA;&#xA;    tokens = tokenizer.tokenize(text)&#xA;    num_tokens = len(tokens)&#xA;&#xA;    return num_tokens&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;得到tokens值为45。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI商业：AI盈利方式总结</title>
      <link>http://blog.memcd.com/posts/cs/2023-0528-ai-income/</link>
      <pubDate>Sun, 28 May 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0528-ai-income/</guid>
      <description>&lt;h1 id=&#34;ai盈利方式总结&#34;&gt;AI盈利方式总结&lt;/h1&gt;&#xA;&lt;p&gt;大家是如何利用AI来挣钱的？&lt;/p&gt;&#xA;&lt;p&gt;本轮AI热潮主要来自于两个技术：AI画图、AI聊天，主要是AI聊天。&lt;/p&gt;&#xA;&lt;p&gt;AI画图的火爆来自于2021年发布的DALL-E、Midjourney和Stable Diffusion，AI聊天的火爆则来自于2022年发布的chatGPT。&lt;/p&gt;&#xA;&lt;p&gt;在我的周围，AI画图从2022年开始在小圈子里火热，大家主要使用Midjourney和若干基于Stable Diffusion的包装产品。受众相对垂直，主要是内容创作相关领域的先锋在玩。&lt;/p&gt;&#xA;&lt;p&gt;chatGPT在2023年1月份开始火爆，而且瞬间火爆出圈，各行各业的人都开始玩起来。过去身边还时不时有人咨询我如何科学上网，或者因为他们不会科学上网而导致很多网站只能放弃使用的情况。但chatGPT的火爆程度之高，让一切技术问题全部不存在了，人们翻江倒海一般通过各自的途径解决了一切障碍。这势头真是前所未见，历史上好像就出现过两次，一次是互联网刚出现那个时候，人们对互联网的渴望；一次是iPhone普及，每个人都想要一部自己的智能手机。&lt;/p&gt;&#xA;&lt;p&gt;经过半年时间，本轮不少通过AI挣钱的商业模式已经清晰了，我来梳理一下。&lt;/p&gt;&#xA;&lt;h2 id=&#34;付费社群&#34;&gt;付费社群&lt;/h2&gt;&#xA;&lt;p&gt;付费社群模式适合已经有大量粉丝的自媒体，通过内容树立专业人设，然后诱导粉丝直接付费进群，入群费作为直接收入源，一般是几十元到几百元范围。在付费群里通过持续的高质量内容留存和活跃，并且可以在其中再次推广高阶付费产品，例如培训课程（俗称的“大课”，一般是几千元级别）、带货售卖（例如自己的AI包装产品）、训练营等。&#xA;也有免费社群模式，就是放弃了入群费，通过先汇聚流量，然后再追求转化的模式，一般常见于影响力相对稍小、直接收费有难度的情况。&lt;/p&gt;&#xA;&lt;h2 id=&#34;知识付费&#34;&gt;知识付费&lt;/h2&gt;&#xA;&lt;p&gt;除了黑产外，第一波就挣到钱的，似乎似乎永远都是培训行业。&#xA;这里说的知识付费，就是上一条中的大课付费，培训的客户群往往来自于付费社群，既然是付费入群的，说明在AI这个方面有强烈学习需求，这个时候向其推广高阶培训课程，就是顺水行舟，流畅自然。转化率比免费社群模式会高很多。&#xA;但是课程制作还是有很大成本的，相对来说属于高投入高收入。&#xA;课程也可以直接上架现有的平台而不自己运营粉丝，例如极客时间、得到App、喜马拉雅等，平台会抽成，但是自己省去了渠道运营的麻烦，还可以节约时间，把精力放在优化课程内容上，还是值得的，缺点是有一定门槛，适合有优秀背景和一定影响力的人。&#xA;当然，也可以两者结合，实际上，大家都是在多种方法混合使用以提高效果。&lt;/p&gt;&#xA;&lt;h2 id=&#34;知识星球&#34;&gt;知识星球&lt;/h2&gt;&#xA;&lt;p&gt;运营一个自己的付费知识星球也是流行的方式。&#xA;特点是社群运营和收费工具都是现成的，就等着你自己搞定流量了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;出书&#34;&gt;出书&lt;/h2&gt;&#xA;&lt;p&gt;chatGPT才火几个月，各种相关的图书已经大量出现了。这些作者的手速真快。&#xA;因为chatGPT的出现，以后出书会更快。&#xA;优点是一次写完，长期收入。缺点是版税收入不高。&lt;/p&gt;&#xA;&lt;h2 id=&#34;内容创作&#34;&gt;内容创作&lt;/h2&gt;&#xA;&lt;p&gt;利用AI画图，AI生成内容两个工具，进行内容创作，如小说、童话、绘本等等。&#xA;这种模式收入应该不高，但如果你已经是优秀的内容创作者，这就是如虎添翼，可以极大提高效率和内容质量。&lt;/p&gt;&#xA;&lt;h2 id=&#34;技术咨询&#34;&gt;技术咨询&lt;/h2&gt;&#xA;&lt;p&gt;我最近连续发AI文章之后，有多名老同事找我咨询AI的具体问题。如果作出私域影响力，收费咨询也不是不行。&#xA;相关的业务就是可以给企业内部做AI培训，按次付费的。&lt;/p&gt;&#xA;&lt;h2 id=&#34;ai技术服务&#34;&gt;AI技术服务&lt;/h2&gt;&#xA;&lt;p&gt;常见的是AI绘图制作，根据需求，收费制作客户需要的AI图片，例如产品宣传海报、服装模特海报、人物照等。&lt;/p&gt;&#xA;&lt;h2 id=&#34;直接产品&#34;&gt;直接产品&lt;/h2&gt;&#xA;&lt;p&gt;直接将开源或者开放技术，如chatGPT API、Stable Diffusion等包装成产品进行售卖。&#xA;比较成功的产品，比如国内的无界版图，功能完备，收费逻辑清晰明确，做得就很好。&lt;/p&gt;&#xA;&lt;h2 id=&#34;垂直产品&#34;&gt;垂直产品&lt;/h2&gt;&#xA;&lt;p&gt;利用chatGPT的训练API，对垂直领域的数据做训练，打造一个垂直AI，比如前阵报道的法律咨询AI，是把80万条法院的判决案例作为数据集对chatGPT进行了训练，从而让chatGPT变成了法律咨询专家。&lt;/p&gt;&#xA;&lt;h2 id=&#34;外包开发&#34;&gt;外包开发&lt;/h2&gt;&#xA;&lt;p&gt;也会有没有技术团队的投机者，找到你想让你开发他需要的AI业务系统，这种活一般又累钱又少。&lt;/p&gt;&#xA;&lt;h1 id=&#34;总结&#34;&gt;总结&lt;/h1&gt;&#xA;&lt;p&gt;chatGPT火爆者半年里，可以说是百花齐放，群众的挣钱思路是非常活络的，各种收入的方法让人眼花缭乱。&#xA;在挣钱这件事上不仅想象力丰富，而且动手能力极强。最初我还想自己包装一个chatGPT API的web界面，但是一想，一定会有人也做类似的事情，一等，果然一大堆开源的包装，各种语言的实现。一行docker命令就部署完毕了，自己又省下了开发的时间，在强大的开源社区面前，不写代码往往是更好的选择。&lt;/p&gt;&#xA;&lt;p&gt;上面提到的各种方法，半年过来基本都饱和了。&lt;/p&gt;&#xA;&lt;p&gt;目前依然未见王牌应用出现，是不是，大语言模型这种模式，只适合chatGPT那样直接聊天了？&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI工具：AI新手入门神器！42款实用工具资源推荐 </title>
      <link>http://blog.memcd.com/posts/cs/2023-0425-ai-tools/</link>
      <pubDate>Wed, 10 May 2023 23:19:00 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0425-ai-tools/</guid>
      <description>&lt;h1 id=&#34;ai新手入门神器42款实用工具资源推荐&#34;&gt;AI新手入门神器！42款实用工具资源推荐&lt;/h1&gt;&#xA;&lt;p&gt;&lt;em&gt;时代语录：人不会被AI淘汰，但是会被先掌握AI工具的人淘汰。&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;本文适合先收藏，以方便随时回看查阅。&lt;/p&gt;&#xA;&lt;p&gt;最近，总有朋友过来咨询我，应该如何使用AI工具来辅助自己工作和学习。于是我整理了一份当下主流的AI工具列表，覆盖了聊天、绘图和辅助助手等当下热门的AI应用领域，均为用户产品，不需要会技术，方便尚未接触AI的朋友快速找到自己需要的工具，已经在使用AI的也可以当作一份速查表来使用。&lt;/p&gt;&#xA;&lt;img src=&#34;toolbox.png&#34; width=&#34;50%&#34; /&gt;&#xA;&lt;p&gt;&lt;em&gt;除特殊注明外，以下网址均需要使用海外地址注册和访问。&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;聊天类&#34;&gt;聊天类&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;chatGPT（最强）：https://chat.openai.com/&lt;/li&gt;&#xA;&lt;li&gt;new bing（微软产品）：https://www.bing.com/new&lt;/li&gt;&#xA;&lt;li&gt;Claude（谷歌投资）：https://www.anthropic.com/product&lt;/li&gt;&#xA;&lt;li&gt;Bard（谷歌出品）：https://bard.google.com/&lt;/li&gt;&#xA;&lt;li&gt;TruthGPT（马斯克投资，刚起步比较弱，但可直接访问而且无需注册）：https://talk.truthgpt.one/&lt;/li&gt;&#xA;&lt;li&gt;open-assistant（开放AI助手，可直接访问）：https://open-assistant.io/zh/chat&lt;/li&gt;&#xA;&lt;li&gt;ChatGPT Chinese（基于chatGPT，可直接访问）：https://chat.gptchinese.com/&lt;/li&gt;&#xA;&lt;li&gt;文心一言（百度出品，可直接访问）：https://yiyan.baidu.com/&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;自然语言画图类&#34;&gt;自然语言画图类&lt;/h2&gt;&#xA;&lt;p&gt;画图和图片AI&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Midjourney：https://www.midjourney.com/&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Midjourney辅助工具：https://www.midlibrary.io/&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;无界版图（可直接访问）：http://wujiebantu.com&lt;/li&gt;&#xA;&lt;li&gt;DALL·E：https://openai.com/product/dall-e-2&lt;/li&gt;&#xA;&lt;li&gt;微软DALL·E助手： &lt;a href=&#34;https://cn.bing.com/create&#34;&gt;https://cn.bing.com/create&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;文字转图片：https://stablediffusionweb.com/&lt;/li&gt;&#xA;&lt;li&gt;picso.ai：https://picso.ai/create&lt;/li&gt;&#xA;&lt;li&gt;Draft（二次元画图）：https://draft.art/explore&lt;/li&gt;&#xA;&lt;li&gt;leonardoAI：https://app.leonardo.ai/&lt;/li&gt;&#xA;&lt;li&gt;Vega AI 创作平台： &lt;a href=&#34;https://rightbrain.art/text2Image&#34;&gt;https://rightbrain.art/text2Image&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;爱作画：https://aizuohua.com/&lt;/li&gt;&#xA;&lt;li&gt;皮卡智能：https://www.picup.shop/text2image.html#/&lt;/li&gt;&#xA;&lt;li&gt;6pen（速度慢）：https://6pen.art/&lt;/li&gt;&#xA;&lt;li&gt;Freehand意绘：https://freehands.cn/&lt;/li&gt;&#xA;&lt;li&gt;Pebblely（产品图片变成电商展示图）：https://pebblely.com/&lt;/li&gt;&#xA;&lt;li&gt;AI绘图创作：https://rightbrain.art/&lt;/li&gt;&#xA;&lt;li&gt;基于SD的文字转图片（学术研究项目，调查人类对AI和真实图片的感受）：https://pickapic.io&lt;/li&gt;&#xA;&lt;li&gt;drawthings绘图辅助（适合儿童）：https://drawthings.ai/&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;视频&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Runway text2video（视频P图）：https://runwayml.com/&lt;/li&gt;&#xA;&lt;li&gt;Runway text2video Gen2（文本转视频）：https://research.runwayml.com/gen2&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;辅助工具类&#34;&gt;辅助工具类&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;生产力工具： &lt;a href=&#34;https://ai.newzone.top/&#34;&gt;https://ai.newzone.top/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;产品经理AI工具： &lt;a href=&#34;https://www.pmaihelper.com/&#34;&gt;https://www.pmaihelper.com/&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Interior AI（装修效果预览）：https://interiorai.com/&lt;/li&gt;&#xA;&lt;li&gt;人工智能内容生成器：http://copy.ai&lt;/li&gt;&#xA;&lt;li&gt;提高图片分辨率：http://letsenhance.io&lt;/li&gt;&#xA;&lt;li&gt;将你的创意变成一个登陆页面：http://60sec.site&lt;/li&gt;&#xA;&lt;li&gt;MurfAI（文字转真人语音）：https://murf.ai/&lt;/li&gt;&#xA;&lt;li&gt;PPT制作（不能直接访问）：https://www.beautiful.ai&lt;/li&gt;&#xA;&lt;li&gt;人工智能pdf文字提取：https://pdflux.com/invitation/hBtLdJ&lt;/li&gt;&#xA;&lt;li&gt;使用ChatGPT进行批量处理：http://parallelgpt.ai&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;编程助手工具&#34;&gt;编程助手工具&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;GitHub Copilot（最早、最强、付费）：https://github.com/features/copilot&lt;/li&gt;&#xA;&lt;li&gt;cursor.so（免费，不仅帮你写、还帮你讲代码）：https://www.cursor.so/&lt;/li&gt;&#xA;&lt;li&gt;tabnine：https://www.tabnine.com/&lt;/li&gt;&#xA;&lt;li&gt;AWS CodeWhisperer：https://aws.amazon.com/cn/codewhisperer/&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;在AI飞速迭代的今天，了解和熟练使用最新最实用的AI工具，已成为AI从业者必备的竞争力之一。这份工具列表是我最近几个月的持续收集成果，值得作为学习与实践AI的“导航”随时查阅。也欢迎在评论区指出遗漏或推荐更佳的工具资源，让这份列表变得更加全面。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI聊天：跑在笔记本里的大语言模型 - GPT4All</title>
      <link>http://blog.memcd.com/posts/cs/2023-0510-gpt4all/</link>
      <pubDate>Wed, 10 May 2023 23:19:00 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0510-gpt4all/</guid>
      <description>&lt;h1 id=&#34;跑在笔记本里的大语言模型---gpt4all&#34;&gt;跑在笔记本里的大语言模型 - GPT4All&lt;/h1&gt;&#xA;&lt;h2 id=&#34;何为gpt4all&#34;&gt;何为GPT4All&lt;/h2&gt;&#xA;&lt;p&gt;GPT4All &lt;a href=&#34;https://gpt4all.io&#34;&gt;官网&lt;/a&gt;给自己的定义是：一款免费使用、本地运行、隐私感知的聊天机器人，无需GPU或互联网。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://gpt4all.io/landing.gif&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;从官网可以得知其主要特点是：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;本地运行（可包装成自主知识产权🐶）&lt;/li&gt;&#xA;&lt;li&gt;无需GPU（穷人适配）&lt;/li&gt;&#xA;&lt;li&gt;无需联网（某国也可运行）&lt;/li&gt;&#xA;&lt;li&gt;同时支持Windows、MacOS、Ubuntu Linux（环境要求低）&lt;/li&gt;&#xA;&lt;li&gt;是一个聊天工具，支持中文&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;模型介绍&#34;&gt;模型介绍&lt;/h2&gt;&#xA;&lt;p&gt;GPT4All支持多种不同大小和类型的模型，用户可以按需选择。&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;序号&lt;/th&gt;&#xA;          &lt;th&gt;模型&lt;/th&gt;&#xA;          &lt;th&gt;许可&lt;/th&gt;&#xA;          &lt;th&gt;介绍&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;1&lt;/td&gt;&#xA;          &lt;td&gt;ggml-gpt4all-j-v1.3-groovy.bin&lt;/td&gt;&#xA;          &lt;td&gt;商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于GPT-J，在全新GPT4All数据集上训练&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;2&lt;/td&gt;&#xA;          &lt;td&gt;ggml-gpt4all-113b-snoozy.bin&lt;/td&gt;&#xA;          &lt;td&gt;非商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于Llama 13b，在全新GPT4All数据集上训练&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;3&lt;/td&gt;&#xA;          &lt;td&gt;ggml-gpt4all-j-v1.2-jazzy.bin&lt;/td&gt;&#xA;          &lt;td&gt;商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于GPT-J，在v2 GPT4All数据集上训练。&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;4&lt;/td&gt;&#xA;          &lt;td&gt;ggml-gpt4all-j-v1.1-breezy.bin&lt;/td&gt;&#xA;          &lt;td&gt;商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于GPT-J，在v1 GPT4All数据集上训练&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;5&lt;/td&gt;&#xA;          &lt;td&gt;ggml-gpt4all-j.bin&lt;/td&gt;&#xA;          &lt;td&gt;商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于GPT-J，在v0 GPT4All数据集上训练&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;6&lt;/td&gt;&#xA;          &lt;td&gt;ggml-vicuna-7b-1.1-q4_2.bin&lt;/td&gt;&#xA;          &lt;td&gt;非商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于Llama 7b，由加州大学伯克利分校、加州大学医学院、斯坦福大学、麻省理工大学和加州大学圣地亚哥分校的团队训练。&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;7&lt;/td&gt;&#xA;          &lt;td&gt;ggml-vicuna-13b-1.1-g4_2.bin&lt;/td&gt;&#xA;          &lt;td&gt;非商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于Llama 13b，由加州大学伯克利分校、加州大学医学院、斯坦福大学、麻省理工大学和加州大学圣地亚哥分校的团队训练。&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;8&lt;/td&gt;&#xA;          &lt;td&gt;ggml-wizardLM-7B.q4_2.bin&lt;/td&gt;&#xA;          &lt;td&gt;非商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于Llama 7b，由微软和北京大学训练。&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;9&lt;/td&gt;&#xA;          &lt;td&gt;ggml-stable-vicuna-13B.q4_2.bin&lt;/td&gt;&#xA;          &lt;td&gt;非商业许可&lt;/td&gt;&#xA;          &lt;td&gt;基于Llama 13b和RLHF，由Stable AI训练&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;GPT4All的模型是一个 3GB - 8GB 的​​文件，目前由&lt;a href=&#34;https://home.nomic.ai/&#34;&gt;Nomic AI&lt;/a&gt;进行维护。&#xA;模型文件下载后，默认会放置在 &lt;code&gt;~/.local/share/nomic.ai/GPT4ALL&lt;/code&gt; 路径下。&#xA;国内网络有可能下载速度很慢，可以通过海外服务器中转下载文件，我的环境下实测速度大概是这样的：&#xA;本地下载：35KB/s，海外服务器下载：60MB/s，海外服务器到本地：5MB/s。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI聊天：不能使用chatGPT？这3个平替甚至比chatGPT更强</title>
      <link>http://blog.memcd.com/posts/cs/2023-0420-ai-replacement/</link>
      <pubDate>Thu, 20 Apr 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0420-ai-replacement/</guid>
      <description>&lt;h1 id=&#34;不能使用chatgpt这3个平替甚至比chatgpt更强&#34;&gt;不能使用chatGPT？这3个平替甚至比chatGPT更强&lt;/h1&gt;&#xA;&lt;p&gt;chatGPT，一款由OpenAI开发的AI聊天机器人，正在势如破竹地改变着许多人的工作和生活方式。作为一款基于大语言模型的聊天机器人，chatGPT能够理解自然语言并进行人机对话。与传统的规则或语义匹配为基础的“人工智障”聊天机器人相比，chatGPT更加智能，交互体验更加自然流畅。&#xA;可惜由于存在两堵神秘的透明墙，很多人至今也无法使用chatGPT的服务。在ChatGPT风靡全球之际，各大公司纷纷加入战局，推出了属于自己的聊天机器人，力求在这场AI聊天的狂欢中分一杯羹。其中，如new bing（申请进入waitlist）、Brad（申请加入waitlist）等等都是很强大的相似产品，然而它们都需要先进行申请，获得批准后才可体验。为了让大家免去繁琐的等待过程，我精心挑选了三款无需申请，注册即可使用的ChatGPT替代品。让我们一起携手AI，将工作与生活变得更加轻松有趣吧！&lt;/p&gt;&#xA;&lt;p&gt;三款chatGPT平替：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Claude&lt;/li&gt;&#xA;&lt;li&gt;truthgpt&lt;/li&gt;&#xA;&lt;li&gt;open-assistant&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;第一款产品claude&#34;&gt;第一款产品：Claude&lt;/h2&gt;&#xA;&lt;p&gt;Claude是一个slack的聊天插件，直接在slack搜索这个插件安装即可，或者从官网上进行插件安装（需要授权）。安装后可以私聊或者将Claude邀请进聊天群中使用。这一点很像Midjourney。&#xA;Claude是由美国Anthropic公司开发的。Anthropic是一家由11名前OpenAI的员工于2022年创立的公司。Claude是他们开发的第一个产品，也是他们的人工智能系统的最新研究成果。Claude得到了谷歌3亿美元的投资。&lt;/p&gt;&#xA;&lt;p&gt;官网：https://anthropic.com/claude-in-slack&lt;/p&gt;&#xA;&lt;h2 id=&#34;第二款产品truthgpt&#34;&gt;第二款产品：truthgpt&lt;/h2&gt;&#xA;&lt;p&gt;truthgpt是马斯克的产品，就是那个发明电子支付paypal、制造特斯拉、又要向火星发射星舰的马斯克。&#xA;马斯克对truthgpt的评价是： “我将开始一些我称之为 TruthGPT 或最大程度寻求真相的人工智能，它试图了解宇宙的本质。而且我认为这可能是通往安全的最佳途径，因为一个关心了解宇宙的人工智能不太可能消灭人类，因为我们是宇宙中有趣的一部分。”&#xA;我可以理解为：truthgpt的强项，是天文吗。。。&#xA;总之，这个AI不会毁灭人类就对了。&lt;/p&gt;&#xA;&lt;p&gt;官网：https://talk.truthgpt.one/&lt;/p&gt;&#xA;&lt;h2 id=&#34;第三款产品open-assistant&#34;&gt;第三款产品：open-assistant&lt;/h2&gt;&#xA;&lt;p&gt;Open Assistant是一个开源的AI助手，你可以通过完成官网的任务来协助改进这个AI，中文提问英文回答，可以借助翻译软件查看回复。&lt;/p&gt;&#xA;&lt;p&gt;官网：https://open-assistant.io/zh/chat&lt;/p&gt;&#xA;&lt;h2 id=&#34;横向对比&#34;&gt;横向对比&lt;/h2&gt;&#xA;&lt;p&gt;为了验证这些AI的能力如何，我整理了10个不同类型的问题向AI进行咨询：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;社会问题：中国为什么舍不得给老百姓放假？&lt;/li&gt;&#xA;&lt;li&gt;职业问题：过了35岁失业无法找到工作怎么办？&lt;/li&gt;&#xA;&lt;li&gt;生活常识：香蕉和牛奶可以一起吃么？&lt;/li&gt;&#xA;&lt;li&gt;角色扮演：作为一名历史老师，你会怎么样对我讲解学习历史的重要性？&lt;/li&gt;&#xA;&lt;li&gt;诗歌创作：请以“像一道闪电”为题目，写一段抒情文字或一首小诗。&lt;/li&gt;&#xA;&lt;li&gt;文章写作：写一个小朋友云中探险的小故事，不超过300字。&lt;/li&gt;&#xA;&lt;li&gt;技术问题：写一个程序，提取百度首页中的文字。&lt;/li&gt;&#xA;&lt;li&gt;心理咨询：我最近总是很抑郁怎么办？&lt;/li&gt;&#xA;&lt;li&gt;语言理解：这个故事的笑点在哪：今天下雨，我骑车差点摔倒，好在我一把把把把住了。&lt;/li&gt;&#xA;&lt;li&gt;内容总结：用一句话总结一下这段内容：从年轻人兴起“特种兵式”旅游，到“一串烧烤”带火一座城，这个春天，中国消费市场展现出强劲复苏之势。国家统计局数据显示，一季度市场销售较快恢复、服务业明显回升，社会消费品零售总额114922亿元，同比增长5.8%；服务业增加值同比增长5.4%，其中住宿和餐饮业增长13.6%。另一组来自国家税务总局的税收数据显示，一季度住宿餐饮、文体娱乐、居民服务销售收入同比分别增长22.8%、13.7%和9.4%，已经超过疫情前2019年的水平。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;下面来看看不同AI的表现如何吧：&lt;/p&gt;&#xA;&lt;h3 id=&#34;中国为什么舍不得给老百姓放假&#34;&gt;中国为什么舍不得给老百姓放假？&lt;/h3&gt;&#xA;&lt;p&gt;open-assistant&#xA;鉴于当前的全球经济形势，世界上许多国家一直在实施各种措施，以支持其经济，减轻正在流行的新冠肺炎疫情的影响。就中国而言，政府已经采取了几项措施来刺激国内消费，以提振经济，包括将农历新年假期延长至今年4月。&#xA;延长假期的决定是考虑到公共卫生问题、社会稳定以及疫情期间长期停工后工业恢复的必要性等因素而做出的。它旨在平衡不同部门的需求，并确保工人能够在重新开始生产之前安全返回工作岗位。然而，值得注意的是，延长假期可能会给某些企业和行业带来一些不便或干扰，在制定政策时应考虑到所有相关方。&lt;/p&gt;&#xA;&lt;p&gt;chatGPT 3.5&#xA;中国是一个经济快速发展的国家，在保持经济稳定和发展的同时，政府也非常注重提高人民群众的生活水平和福利保障。因此，中国政府一直致力于平衡经济发展和社会福利，通过法律法规和政策制度，为人民提供了一系列的假期制度和福利待遇，以满足人民对休息、娱乐和旅游等方面的需求。&lt;/p&gt;&#xA;&lt;p&gt;目前，中国已经有七天的春节假期、五天的劳动节假期、三天的国庆假期等长假制度，同时还有带薪年假、产假、陪产假、病假、婚假等各种假期制度。这些假期制度可以让人们有更多的时间去放松身心、增加生活乐趣和享受家庭生活，同时也可以促进旅游、消费等产业的发展，促进经济的增长。&lt;/p&gt;&#xA;&lt;p&gt;当然，不可避免地会有一些企业或者行业需要在节假日期间继续运营和服务，但是政府也在努力加强监管和规范，保障劳动者的权益，提高工资福利待遇和保障工作安全。同时，也鼓励企业提高生产效率和管理水平，通过智能化技术和自动化设备等方式，减少对人力资源的依赖，提高劳动效率，以达到更好的经济效益。&lt;/p&gt;&#xA;&lt;p&gt;总之，中国政府一直在努力平衡经济发展和社会福利，通过制定和完善假期制度和福利政策，为人民提供更好的休息和生活保障，同时也为经济发展提供更多的机会和动力。&lt;/p&gt;&#xA;&lt;p&gt;truthgpt&#xA;中国政府认为，给老百姓放假会影响经济发展，因为放假期间，大多数企业和工厂都会停止生产，这将导致经济活动减少，从而影响经济发展。此外，放假期间，大多数人都会去旅游，这将导致交通拥堵，从而影响经济发展。因此，中国政府认为，给老百姓放假可能会影响经济发展，因此不愿意给老百姓放假。另外，中国政府认为，放假期间，大多数人都会去旅游，这将导致社会混乱，从而影响社会稳定。因此，中国政府认为，给老百姓放假可能会影响社会稳定，因此不愿意给老百姓放假。&lt;/p&gt;&#xA;&lt;p&gt;chatGPT4&#xA;实际上，中国政府为全体国民设立了一定数量的法定节假日。以下是一些原因，可能解释为什么中国的节假日数量看似较少：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;经济发展：在追求经济增长的过程中，过多的休假可能导致生产力下降。为了保持高速的经济发展，节假日的安排可能会相对有限。&lt;/li&gt;&#xA;&lt;li&gt;人口众多：中国有着庞大的人口，过多的假期可能导致交通拥堵、旅游资源紧张等问题。因此，合理控制假期数量有助于维护社会秩序。&lt;/li&gt;&#xA;&lt;li&gt;劳动力市场：部分企业为了降低成本，可能在一定程度上压缩员工的休假时间。虽然政府有相关法规保障员工的权益，但在实际操作中仍可能存在一定差距。&lt;/li&gt;&#xA;&lt;li&gt;文化因素：在中国传统文化中，勤劳节俭是一种美德。这种观念可能会影响到节假日的安排，使得休假看起来相对较少。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;需要注意的是，中国政府不断调整和优化节假日政策，以满足人民群众的需求。此外，各个企业和地区在实际操作中，也可以根据实际情况为员工提供一定的弹性休假安排。&lt;/p&gt;&#xA;&lt;p&gt;Claude&#xA;这个问题涉及到中国社会文化和政经环境几个方面:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;传统文化影响:中国传统文化褒扬勤奋和辛勤工作,崇尚努力与奉献。放假被视为偷懒和失去生产力,这种观念深深影响着社会主流意识。&lt;/li&gt;&#xA;&lt;li&gt;GDP至上:中国政府一直把GDP增长作为最重要的考核指标和施政目标。所以不愿意放假,以免影响经济增长。&lt;/li&gt;&#xA;&lt;li&gt;企业利润压力:在激烈的市场竞争环境下,企业也不愿意放假,以免影响生产和利润。他们会最大限度地压榨员工的劳动力。&lt;/li&gt;&#xA;&lt;li&gt;员工时薪制度:大部分中国企业实行的都是简单的&amp;quot;工资 = 基本工资 + 工作时间&amp;quot;的薪资体系。所以放假就意味着减少收入,这也不利于鼓励放假。&lt;/li&gt;&#xA;&lt;li&gt;政策缺失:中国的劳动法和政策没有对带薪休假做出足够规定和保障。许多企业可以通过各种名义不发放工资来压缩员工的假期,没有被明确制止。&lt;/li&gt;&#xA;&lt;li&gt;社会习性:许多中国人即使有假期也不太习惯完全&amp;quot;无所事事&amp;quot;的休息。要么通过兼职或副业赚取额外收入,要么把假期时间用于家庭琐事或旅游。这也不利于充实有薪休假制度。&#xA;所以,可以看出放假在中国遭遇的阻力主要来自于传统文化的影响、GDP至上的政策取向、企业利润压力、员工薪酬体系的弊端、法规政策的缺失以及社会习性等多个方面。这些因素的综合作用,导致中国社会整体上还是&amp;quot;舍不得&amp;quot;给老百姓放假。&#xA;中国要进一步推进有薪休假制度,需要在上述方面做出努力和改变。但这无疑是一个漫长的社会变革过程。&#xA;&lt;img src=&#34;claude.png&#34; width=&#34;60%&#34; /&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;本问题的回答质量：Claude &amp;gt; chatGPT4 &amp;gt; truthgpt &amp;gt; chatGPT 3.5 &amp;gt; open-assistant&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI发展史：AI人工智能简史</title>
      <link>http://blog.memcd.com/posts/ai/2023-0417-ai-history/</link>
      <pubDate>Mon, 17 Apr 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/ai/2023-0417-ai-history/</guid>
      <description>&lt;h1 id=&#34;ai人工智能简史&#34;&gt;AI人工智能简史&lt;/h1&gt;&#xA;&lt;p&gt;最近学习AI，顺便整理了一份AI人工智能简史，大家参考：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;1951年 第一台神经网络机，称为SNARC；&lt;/li&gt;&#xA;&lt;li&gt;1956年 达特茅斯学院会议，正式确立了人工智能的研究领域；&lt;/li&gt;&#xA;&lt;li&gt;1966年 MIT发明ELIZA人机心理治疗对话程序，通过关键词和数据库实现心理咨询；&lt;/li&gt;&#xA;&lt;li&gt;1980年 CMU为DEC设计的XCON专家系统获得巨大的成功；&lt;/li&gt;&#xA;&lt;li&gt;1997年 IBM深蓝击败国际象棋世界冠军卡斯帕罗夫，IBM在比赛后宣布深蓝退役；&lt;/li&gt;&#xA;&lt;li&gt;2010年 DeepMind成立；&lt;/li&gt;&#xA;&lt;li&gt;2011年 IBM Watson问答系统，赢得智力竞赛节目Jeopardy一等奖100万美元；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;苹果发布Siri智能语音助手；&lt;/li&gt;&#xA;&lt;li&gt;Automated Insights推出智能写作产品并在美联社应用；&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;2012年 谷歌发布Google Now安卓语音助手；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;谷歌自动驾驶汽车获得政府执照；&lt;/li&gt;&#xA;&lt;li&gt;亚马逊仓储机器人；&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;2014年 PrincetonAI在图灵测试中取得了33%的成功率；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;亚马逊发布ECHO智能音箱，内置亚马逊Alexa智能助理；&lt;/li&gt;&#xA;&lt;li&gt;特斯拉发布Autopilot辅助驾驶；&lt;/li&gt;&#xA;&lt;li&gt;谷歌收购DeepMind；&lt;/li&gt;&#xA;&lt;li&gt;微软亚洲研究院推出小冰聊天机器人；同年，小冰微信版被腾讯下线；&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;2015年 Ilya Sutskever和Greg Brockman创立openai，Elon Musk等担任主席；&lt;/li&gt;&#xA;&lt;li&gt;2016年 Google DeepMind AlphaGo以4:1击败顶尖职业棋手李世石，同年使用Master的匿名身份以全胜战绩击败中韩日台60名一流高手；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;谷歌发布Allo，其内置虚拟助手Google Assistant，提供智能回复功能；&lt;/li&gt;&#xA;&lt;li&gt;一款叫Prisma的照片编辑器App火爆全网；&lt;/li&gt;&#xA;&lt;li&gt;Google翻译引入了深度学习的最新算法；&lt;/li&gt;&#xA;&lt;li&gt;特斯拉佛罗里达自动驾驶车祸致死事件；&lt;/li&gt;&#xA;&lt;li&gt;亚马逊开办无人超市amazon go！&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;2017年 AlphaGo以全胜战绩击败围棋世界冠军柯洁，AlphaGo退役；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;小米发布小爱同学智能音箱；&lt;/li&gt;&#xA;&lt;li&gt;阿里巴巴发布天猫精灵智能音箱；&lt;/li&gt;&#xA;&lt;li&gt;各种智能助理产品被人们称为人工智障；&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;2019年 微软向openai投资10亿美元；&lt;/li&gt;&#xA;&lt;li&gt;2021年 github发布GitHub Copilot，可以根据注释或者提示自动生成实现代码；&lt;/li&gt;&#xA;&lt;li&gt;2022年 openai在11月发布了号称可以接住一切话题的、基于GPT-3大型语言模型(LLM)的聊天AI产品chatGPT，引发AI热潮；&lt;/li&gt;&#xA;&lt;li&gt;2023年 openai发布了chatGPT4；&#xA;&lt;ul&gt;&#xA;&lt;li&gt;微软Office和bing进行了服务整合，推出new bing和office copilot；&lt;/li&gt;&#xA;&lt;li&gt;微软向OpenAI LP提供了第二笔多年期投资，据报道为100亿美元；&lt;/li&gt;&#xA;&lt;li&gt;Google推出bard，发布会演示中出现错误，谷歌的股票随后下跌了8%，相当于市值损失1000亿美元；&lt;/li&gt;&#xA;&lt;li&gt;百度发布文心一言，国内多家公司纷纷跟进自己的AI产品，但和chatGPT相比差距明显；&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;AI%E5%8F%91%E5%B1%95%E7%AE%80%E5%8F%B21.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;1966年MIT的ELIZA人机心理治疗对话程序，才采用关键词提取的方法，再用关键词去匹配相应的回答，实现心理咨询的功能。从产品落地，到现在一共五十多年。今天，chatGPT4已经可以深刻理解人类的自然语言，并可以针对各行各业的常规问题给出正确的理解和回答。chatGPT发布短短几个月，却已经深刻改变了人们工作和生活的方式，利用好这个工具，将可以极大地提高工作的效率和质量，你甚至可以就生活中的琐事向它咨询正确的处理方法，它就像一个无所不知的高级贴身私人顾问，随时准备着为你解答每一个疑惑。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI绘图：这些AI绘画工具教你秒变艺术大师！</title>
      <link>http://blog.memcd.com/posts/cs/2023-0403-ai-painting/</link>
      <pubDate>Mon, 03 Apr 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0403-ai-painting/</guid>
      <description>&lt;h1 id=&#34;这些ai绘画工具教你秒变艺术大师&#34;&gt;这些AI绘画工具教你秒变艺术大师！&lt;/h1&gt;&#xA;&lt;p&gt;在数字化的时代，人工智能技术的不断发展和进步也给艺术领域带来了许多新的可能性。其中，AI绘画工具成为越来越多艺术家和设计师们的首选，帮助他们创作出独特而精美的艺术品。这些AI绘画工具利用深度学习和机器学习算法，能够模仿人类艺术家的风格和技巧，甚至超越人类的想象力。本文将介绍目前流行的12种AI绘画工具，帮助您更好地了解这些工具的功能和特点，以及如何将其应用于您的创作中。&lt;/p&gt;&#xA;&lt;h2 id=&#34;12种ai绘画工具为你解决绘画场景中的各种难题&#34;&gt;12种AI绘画工具，为你解决绘画场景中的各种难题！&lt;/h2&gt;&#xA;&lt;p&gt;从2022年以来，人工智能AI绘画突然火爆街头巷尾，似乎每个微信群里都有人在发送AI绘制的各种惊人绘画作品。&lt;/p&gt;&#xA;&lt;p&gt;我收集整理了12个AI绘画工具，并使用方式做了简单的使用说明，可以帮助尚未上手的同学们快入进入AI绘画的世界。&lt;/p&gt;&#xA;&lt;h2 id=&#34;top1-midjourney&#34;&gt;TOP1 Midjourney&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.midjourney.com&#34;&gt;https://www.midjourney.com&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;midjourney06.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Midjourney是一款基于人工智能的数字绘图工具，通过它可以创作出令人惊叹的绘画作品。Midjourney的使用非常简单，不需要任何编程技能，只需要输入相应的文字就可以可以自由地创作绘画作品。此外，Midjourney还提供了社交功能，用户可以在平台上分享自己的作品，与其他用户互动和交流。Midjourney不需要任何专业的绘画技能，适合任何人使用，从孩子到成年人都可以使用。&lt;/p&gt;&#xA;&lt;p&gt;Midjourney是目前效果最棒的AI绘图工具。访问Midjourney需要科学上网。&lt;/p&gt;&#xA;&lt;p&gt;目前Midjourney已经停止提供免费的配额，需要通过信用卡付费订阅才能使用，价格为10美元200张图，或者30美元不限量。&lt;/p&gt;&#xA;&lt;h2 id=&#34;top2-dalle-2&#34;&gt;TOP2 DALL·E 2&lt;/h2&gt;&#xA;&lt;p&gt;DALL·E：https://openai.com/product/dall-e-2&#xA;微软DALL·E助手： &lt;a href=&#34;https://cn.bing.com/create&#34;&gt;https://cn.bing.com/create&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;dalle.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;DALL·E是OpenAI（chatGPT的公司）于2021年推出的一种人工智能模型，其名称从2008年的动画电影WALL-E（瓦力）和20世纪西班牙加泰罗尼亚画家萨尔瓦多·达利（Salvador Dalí）结合而来。DALL·E能够将自然语言描述转换成对应的图像，使计算机能够通过语言指令生成与描述相符的图片。与其他生成图像的人工智能模型不同，DALL·E可以通过语言描述创造出复杂的、超现实的图像，例如“一只斑点狗坐在一杯气泡水上”或“一只披着早餐面条的小狗”。DALL·E使用了类似于GPT系列的自回归语言模型来生成图片，同时还使用了卷积神经网络（CNN）和变分自编码器（VAE）来处理图像信息。DALL·E的应用潜力非常广泛，可以用于图像生成、图像编辑、计算机辅助设计等领域。&lt;/p&gt;&#xA;&lt;p&gt;DALL·E也是最早引爆AI绘图话题的产品。目前国内无法访问。&lt;/p&gt;&#xA;&lt;h2 id=&#34;top3-无界版图&#34;&gt;TOP3 无界版图&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://wujiebantu.com&#34;&gt;http://wujiebantu.com&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;wujie.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;无界版图是国内运营的AI画图工具，内置多种模型和不同的风格，只需要点选即可设定自己需要的效果和风格，使用非常简单。&#xA;最大的优点是即使不科学也可以直接访问，同时提供App，可以在手机上直接操作，非常方便。&lt;/p&gt;&#xA;&lt;h2 id=&#34;其他&#34;&gt;其他&lt;/h2&gt;&#xA;&lt;p&gt;文心一格：https://yige.baidu.com/&lt;/p&gt;&#xA;&lt;p&gt;百度是目前国内少数几个大力投入在AI领域且有竞争力的公司。文心系列在去年一直可以免费试用，今年正式发布后反而得申请资格才能使用了。&#xA;总体上和其他产品大同小异，从试用情况看，出图质量一般。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;picso.ai：https://picso.ai/create&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;一个很简单的AI画图平台，出图的质量也很不错&lt;/p&gt;&#xA;&lt;p&gt;这里还收集了一些类似的平台，功能大同小异，有兴趣可以逐一实验：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Draft：https://draft.art/explore&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;二次元为主打的AI画图站，二次元出图质量不错&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;leonardoAI：https://app.leonardo.ai/&lt;/li&gt;&#xA;&lt;li&gt;Vega AI 创作平台： &lt;a href=&#34;https://rightbrain.art/text2Image&#34;&gt;https://rightbrain.art/text2Image&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;爱作画：https://aizuohua.com/&lt;/li&gt;&#xA;&lt;li&gt;皮卡智能：https://www.picup.shop/text2image.html#/&lt;/li&gt;&#xA;&lt;li&gt;6pen（速度慢）：https://6pen.art/&lt;/li&gt;&#xA;&lt;li&gt;Freehand意绘：https://freehands.cn/&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;不同平台的默认风格存在区别，多找几个工具，可以在免费额度用完了之后换另外一个平台继续创作。对于优秀的平台，可以付费订阅支持他们的服务。&lt;/p&gt;&#xA;&lt;h2 id=&#34;总结&#34;&gt;总结&lt;/h2&gt;&#xA;&lt;p&gt;AI技术的发展不仅改变了人们的生产和生活方式，也为艺术家们带来了前所未有的创作机会和工具。本文介绍的12种AI绘画工具，无疑是帮助创作者提供的全新利器。这些工具在不同的方面都具有创新性和实用性，它们让艺术家们可以通过AI技术更加轻松地创造出独特的、令人惊叹的艺术作品。在未来，随着AI技术的不断发展和创新，我们相信会有更多的AI绘画工具涌现出来，为艺术家们带来更多的惊喜和机会。&lt;/p&gt;&#xA;&lt;p&gt;AI绘画工具的一个重要优点就是让普通人也能够轻松地尝试和享受艺术创作的过程。对于那些本来认为自己没有艺术细胞的人来说，这些工具就是一个很好的机会来探索自己内心深处的艺术潜能。通过使用这些工具，普通人能够用自己的方式表达自己，而不必受限于自己的技能水平或手绘技能。&lt;/p&gt;&#xA;&lt;p&gt;这些AI绘画工具不仅可以使艺术创作变得更加容易，同时也能够激发普通人的创造力和想象力。人们可以利用这些工具来制作艺术品，同时也可以通过它们来实现自己的设计理念和想法。AI绘画工具为普通人提供了一种全新的艺术创作方式，使人们可以从中发现自己原来隐藏的艺术天赋和潜力，甚至成为一位具有创意和想象力的艺术家。&lt;/p&gt;&#xA;&lt;p&gt;因此，我们可以看到，AI技术已经在很大程度上拓展了艺术创作的范围，并且为更多的人提供了一个尝试艺术创作的机会。在未来，随着AI技术的不断发展，我们相信这些AI绘画工具将继续为更多的人提供创造性和想象力的平台，让更多的人在艺术领域中发掘和实现自己的潜力。&lt;/p&gt;&#xA;&lt;p&gt;iPhone 手机的发明和 AI绘画工具的出现都为普通人提供了更多的艺术创作机会，让更多的人可以轻松地享受到艺术创作的乐趣。&lt;/p&gt;&#xA;&lt;p&gt;与 iPhone 手机让每个人都成为摄影师一样，AI绘画工具也让每个人都成为了一名艺术家。它们不再需要特定的技能或手绘经验，而是通过智能算法来为用户提供快速的艺术创作方案。这使得人们可以从容地展现自己的创意和想象力，用更简单的方式表达自己的内心世界，同时也能够更快地获得创造的乐趣。&lt;/p&gt;&#xA;&lt;p&gt;另外，相比于传统的艺术创作方式，iPhone手机和AI绘画工具的出现还为艺术创作带来了更多的便利。用户可以通过手机和电脑等设备随时随地进行艺术创作，而不必受限于时间和地点。这大大拓展了艺术创作的范围，让更多的人能够参与到艺术创作中来。&lt;/p&gt;&#xA;&lt;p&gt;综上所述，iPhone手机和AI绘画工具在让更多人参与艺术创作、让艺术更加便利和多样化等方面有着相似之处。它们都为普通人提供了更多的机会和方式来享受艺术的魅力。&lt;/p&gt;&#xA;&lt;p&gt;加入创作行列，你没准就是下一个数字艺术家。&lt;/p&gt;&#xA;&lt;h2 id=&#34;作品欣赏&#34;&gt;作品欣赏&lt;/h2&gt;&#xA;&lt;p&gt;&lt;img src=&#34;picso-02.jpg&#34; alt=&#34;使用picso创作&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;picup-01.png&#34; alt=&#34;使用皮卡智能创作&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;draft-01.png&#34; alt=&#34;使用Draft创作&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;dalle-01.png&#34; alt=&#34;DALL·E官方图片&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;wujie-01.jpg&#34; alt=&#34;使用无界创作&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI绘图：一文搞定Midjourney（附送咒语）</title>
      <link>http://blog.memcd.com/posts/cs/2023-0401-midjourney/</link>
      <pubDate>Sat, 01 Apr 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0401-midjourney/</guid>
      <description>&lt;h1 id=&#34;最强绘图ai一文搞定midjourney附送咒语&#34;&gt;最强绘图AI：一文搞定Midjourney（附送咒语）&lt;/h1&gt;&#xA;&lt;p&gt;Midjourney官网：https://www.midjourney.com&lt;/p&gt;&#xA;&lt;h2 id=&#34;简介&#34;&gt;简介&lt;/h2&gt;&#xA;&lt;p&gt;Midjourney是目前效果最棒的AI绘图工具。访问Midjourney需要科学姿势。&#xA;&lt;img src=&#34;midjourney06.png&#34; alt=&#34;midjourney06.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;官网只是宣传和登录入口，提供个人主页、订阅管理等功能，Midjourney实际的绘画功能，是在另外一个叫discord的产品中实现的。&lt;/p&gt;&#xA;&lt;p&gt;Discord是一个即时通讯网站，可用于语音、视频和文本聊天。以及许多其他功能，例如服务器和频道的创建、屏幕共享等等，用户可以创建自己的服务器或加入其他人创建的服务器，并与其他用户交流。Discord也具有丰富的API和插件支持，允许开发人员创建自己的自定义功能和集成。Midjourney就是自己实现图片生成，而用户交互的过程全部交给Discord来做。&lt;/p&gt;&#xA;&lt;h2 id=&#34;付费订阅&#34;&gt;付费订阅&lt;/h2&gt;&#xA;&lt;p&gt;新用户过去每天有25次免费次数，但Midjourney现在已经停止提供免费服务，想使用需要首先付费订阅。在注册登录之后，在Manage Sub菜单中，选择Monthly Billing按月支付，选择10美元（200张）或者30美元（不限量）的套餐，输入国际信用卡信息，并完成支付。&#xA;&lt;img src=&#34;midjourney03.png&#34; alt=&#34;midjourney03.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;10美元订阅包含200张图片（200次prompt输入）和3个并行快速作业，以及3h 20m的Fast Hours，作为入门足够了。Fast Hours简单来说就是立刻分配GPU，不用排队的时间。如果用的多。推荐30美元不限量套餐。&#xA;&lt;img src=&#34;midjourney01.png&#34; alt=&#34;midjourney03.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;支付完毕后可以从左下角的个人菜单中点击“…”，选择“Go to discord”前往discord开始绘画。&#xA;&lt;img src=&#34;midjourney02.png&#34; alt=&#34;midjourney03.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;通过&lt;code&gt;/info&lt;/code&gt;命令可以查看剩余资源情况。&lt;/p&gt;&#xA;&lt;h2 id=&#34;频道和自建服务器&#34;&gt;频道和自建服务器&lt;/h2&gt;&#xA;&lt;p&gt;在Discord的Midjourney主页（Discord称之为服务器）中，选择一个频道即可开始绘画（以#号开头的就是频道名），新手和免费用户可以去newbies系列公开频道，这里可以看到大家使用的Prompt和生成的图片，是一个互相学习的好地方。&lt;/p&gt;&#xA;&lt;p&gt;付费用户可以点击左侧工具栏的加号按钮，创建一个自己的服务器（只是Discord里的概念，和物理服务器没有关系），然后邀请Midjourney机器人加入，这样就可以实现一对一私聊。&lt;/p&gt;&#xA;&lt;h2 id=&#34;绘图&#34;&gt;绘图&lt;/h2&gt;&#xA;&lt;p&gt;在输入框中，输入/imagine 后面跟上图片的描述信息，就可以开始画图了。对中文支持不是很好，建议全英文操作。Midjourney大约需要1分钟时间一次生成4张图片。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;midjourney05.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;图片下方有两排按钮，U 按钮放大图像，生成所选图像的更大版本并添加更多细节。V 按钮会生成与所选图像的整体风格和构图相似的新图像。图片的顺序如上图。&lt;/p&gt;&#xA;&lt;p&gt;使用U放大图像后，会得到一组新的按钮：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Make Variations：创建放大图像的变体并生成四个新图像。&lt;/li&gt;&#xA;&lt;li&gt;Beta/Light Upscale Redo：使用不同的升级器模型重做升级。&lt;/li&gt;&#xA;&lt;li&gt;Web: 在新标签页上打开图库中的图像&lt;/li&gt;&#xA;&lt;li&gt;表情：每天，排名前 1000 位的评分者都会获得一个小时的免费快速模式时间。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;其他相关的&lt;a href=&#34;https://docs.midjourney.com/docs/command-list&#34;&gt;命令&lt;/a&gt;有：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;/blend&lt;/code&gt; 将两个图像混合在一起&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/show&lt;/code&gt; 使用图像ID重新生成图片&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/fast&lt;/code&gt; 切换到快速模式&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/relax&lt;/code&gt; 切换到放松模式&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;图像提示&#34;&gt;图像提示&lt;/h3&gt;&#xA;&lt;p&gt;可以在Prompt的最前面放上图像的链接以影响图像生成结果&lt;/p&gt;&#xA;&lt;h3 id=&#34;咒语&#34;&gt;咒语&lt;/h3&gt;&#xA;&lt;p&gt;虽然只需要一个单词即可生成图片，但精心编写的描述有助于生成令人惊叹的图像。下面是一些常见的咒语，可以在绘画的时候按需结合使用：&lt;/p&gt;&#xA;&lt;p&gt;画质咒语：high detail, FHD, 1080P, 2K, 4K, 8K, uhd, ultra realistic, studio quality, 8k smooth, masterpiece, hyper quality, high ../resolution&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI绘图：在MacAir上搭建人工智能AI画图环境</title>
      <link>http://blog.memcd.com/posts/cs/2023-0306-sdw-mac/</link>
      <pubDate>Mon, 06 Mar 2023 22:01:34 +0800</pubDate>
      <guid>http://blog.memcd.com/posts/cs/2023-0306-sdw-mac/</guid>
      <description>&lt;h1 id=&#34;在macair上搭建人工智能ai画图环境&#34;&gt;在MacAir上搭建人工智能AI画图环境&lt;/h1&gt;&#xA;&lt;p&gt;在MacAir上，可以通过开源的Stable Diffusion项目自行搭建AI画图环境，这里以Intel处理器的Mac Air为例。&lt;/p&gt;&#xA;&lt;p&gt;Stable Diffusion项目硬件要求较高而且只提供终端命令行交互方式，所以这里使用stable-diffusion-webui项目（简称webui）来实现本地部署。webui项目为Stable Diffusion项目提供了web网页的交互方式，操作更简单。&lt;/p&gt;&#xA;&lt;h2 id=&#34;环境部署&#34;&gt;环境部署&lt;/h2&gt;&#xA;&lt;p&gt;本机部署好git环境之后，正常情况直接执行webui的脚本即可运行，在终端里执行：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git&#xA;cd stable-diffusion-webui&#xA;./webui.sh&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;执行过程中会下载一些文件，如果中途出现错误，重新执行webui.sh即可。&lt;/p&gt;&#xA;&lt;p&gt;如果提示opencv版本太老，可以这样手工更新一下：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# ImportError: dlopen(/github/stable-diffusion-webui/venv/lib/python3.10/site-packages/cv2/cv2.abi3.so, 2): Symbol not found: _VTRegisterSupplementalVideoDecoderIfAvailable&#xA;cd venv/bin&#xA;source activate&#xA;./python3.10 -m pip install --upgrade pip&#xA;pip3 install opencv-python==4.6.0.66&#xA;deactivate&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;如果提示显卡问题，可以这样处理：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# RuntimeError: &amp;#34;LayerNormKernelImpl&amp;#34; not implemented for &amp;#39;Half&amp;#39;&#xA;cd venv/bin&#xA;source activate&#xA;pip install torch --extra-index-url https://download.pytorch.org/whl/cu113&#xA;deactivate&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;编辑&lt;code&gt;webui-user.sh&lt;/code&gt;，添加：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;export COMMANDLINE_ARGS=&amp;#34;--precision full --no-half --skip-torch-cuda-test&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;如果顺利地跑成功了，会看到类似这样的提示：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;LatentDiffusion: Running in eps-prediction mode&#xA;DiffusionWrapper has 859.52 M params.&#xA;Applying cross attention optimization (InvokeAI).&#xA;Textual inversion embeddings loaded(0):&#xA;Model loaded in 31.0s (load weights from disk: 0.7s, create model: 1.1s, apply weights to model: 28.5s, apply dtype to VAE: 0.2s, load textual inversion embeddings: 0.3s).&#xA;Running on local URL:  http://127.0.0.1:7860&#xA;&#xA;To create a public link, set `share=True` in `launch()`&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;此时只要打开浏览器访问对应的地址&lt;code&gt;http://127.0.0.1:7860&lt;/code&gt;即可使用了。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
