paulwong

2025年12月14日 #

安装docker mcp

下载docker-mcp https://github.com/docker/mcp-gateway/releases/latest@import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

移到:
Linux    ~/.docker/cli-plugins/docker-mcp
macOS    ~/.docker/cli-plugins/docker-mcp
Windows    %USERPROFILE%\.docker\cli-plugins


posted @ 2025-12-14 11:28 paulwong 阅读(14) | 评论 (0)编辑 收藏

2025年12月13日 #

解读RAG

向大模型输入问题,让大模型回答。
大模型的做法是,先自己去寻找相关信息,再汇总出答案。这个过程有可能不靠谱,大模型自己寻找出他自己认为是对的信息,可能是错的,所以做出的答案,就是错的。
于是改成,让程序找出相关信息,再给大模型汇总。程序员编程后找出的信息肯定是对的,大模型汇总的结果,以大模型的能力,结果也是对的。

但这种方式有问题,就是会多次调用大模型,大模型通常是部署在远端的,就会产生性能问题。所以在大模型内部,让大模型自己去调用工具。

要大模型自己调用工具,就得靠系统提示词了,当然系统提示词不用自己写,将在n8n中流程导出json,再向deepseek提问,就可以生成提示词了。

调用的工具不止一个,就会产生协同问题,如何将a工具产生的结果作为参数调用b工具,这里的做法就是使用few shot,意思是在提示词中要要提供例子,如调用工具产生结果r1,{"input": r1}以这个参数调用工具b,这样工具b内部通过fromAI("input")就能获取到input参数的值了。

这个过程中大模型实际只做汇总,利用了大模型的长处,避免了大模型的短处。

程序去找信息,如果是从数据库中找出相关文档的方式,就是通常据说的RAG。

但在做RAG的过程中,难免碰到需求,如:用户输入关键词,直播回答某些预先答案。

象这种的实现方式,如果采用将答案弄成文档,再去让程序找到相关文档,再让大模型汇总这种方式也是不可靠。因为找到文档也是靠概率。
因此需使用新的方式,这种方式就是让程序调用工具,得出结果作为相关信息,再让大模型做汇总。这个过程出来的结果就是可靠的了。

为什么大模型会去调用工具呢

如果工具处理的方式不够,需要思考,那就需要加入大模型进去,进行协助,这种工具就是智能体了。整个架构就是所谓的多智能体的方式了。

所以总体的思路,就是让大模型做最擅长的活,汇总,信息提供由外部去做。整个结果就是可控的了。

posted @ 2025-12-13 01:28 paulwong 阅读(19) | 评论 (0)编辑 收藏

2025年12月8日 #

添加Milvus MCP

克隆源码:

git clone https://github.com/zilliztech/mcp-server-milvus.git

添加Dockerfile

FROM python:3.12-slim

WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    curl \
    git \
    build-essential \
    && rm -rf /var/lib/apt/lists/*

# 使用 pip 安装 uv(替代 curl 方式)
#RUN pip install --no-cache-dir uv -i https://pypi.tuna.tsinghua.edu.cn/simple 
RUN curl -LsSf https://astral.sh/uv/install.sh | sh

# 或者使用更可靠的方式
# RUN pip install --no-cache-dir uv==0.3.0

# 复制依赖文件
COPY pyproject.toml uv.lock README.md ./

# 为 uv 设置镜像源环境变量
ENV UV_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple

# 使用 uv 安装依赖
# 3. (关键)在构建时安装Python依赖到系统,而非虚拟环境
RUN pip install uv && \
    uv pip install --system -r pyproject.toml
# RUN uv pip install --system -r pyproject.toml -i https://pypi.tuna.tsinghua.edu.cn/simple 

# 复制源代码
COPY src/ ./src/

# 暴露端口
EXPOSE 8000

CMD ["uv", "run", "src/mcp_server_milvus/server.py", "--sse", "--milvus-uri", "http://milvus:19530", "--port", "8000"]

docker-compose.yaml

services:

  mcp-milvus-server:
    build: .
    container_name: mcp-milvus-server
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      - MILVUS_URI=http://host.docker.internal:19530
      # - MILVUS_TOKEN=http://localhost:19530
      # - MILVUS_DB=http://localhost:19530
    ports:
      - "8012:8000"
    volumes:
      - ./src:/app/src
    # depends_on:
    #   milvus:
    #     condition: service_healthy
    command: uv run src/mcp_server_milvus/server.py --sse --milvus-uri http://milvus:19530 --port 8000
    networks:
      - n8n_network

volumes:
  milvus_data:
  milvus_conf:
  etcd_data:
  minio_data:

networks:
  n8n_network:
    external: true

login-mcp-milvus-server.sh

BIN_PATH=$(cd `dirname $0`; pwd)
cd $BIN_PATH/mcp-server-milvus

docker compose exec -it mcp-milvus-server /bin/bash


logs-mcp-milvus-server.sh

BIN_PATH=$(cd `dirname $0`; pwd)
cd $BIN_PATH/mcp-server-milvus

docker compose logs -f 

start-mcp-milvus-server.sh

BIN_PATH=$(cd `dirname $0`; pwd)
cd $BIN_PATH/mcp-server-milvus

docker compose up -d
docker compose logs -f

shutdown-mcp-milvus-server.sh

BIN_PATH=$(cd `dirname $0`; pwd)
cd $BIN_PATH/mcp-server-milvus

docker compose down

restart-mcp-milvus-server.sh

BIN_PATH=$(cd `dirname $0`; pwd)
cd $BIN_PATH

pwd
./shutdown-mcp-milvus-server.sh
./start-mcp-milvus-server.sh


posted @ 2025-12-08 01:49 paulwong 阅读(25) | 评论 (0)编辑 收藏

2025年12月7日 #

MCP资源

什么是mcp?
https://code.visualstudio.com/docs/copilot/customization/mcp-servers#_add-an-mcp-server-to-your-user-settings

mcp server大全
https://github.com/modelcontextprotocol/servers?tab=readme-ov-file

常用mcp server:
https://github.com/modelcontextprotocol/servers-archived/tree/main/src/postgres

mcp 官网:
https://modelcontextprotocol.io/docs/develop/build-server


posted @ 2025-12-07 21:29 paulwong 阅读(30) | 评论 (0)编辑 收藏

2025年11月23日 #

AI 模型广场

如果想在某些垂直领域找比较好的模型, 可到下面这个网址查看:

https://ai.gitee.com/serverless-api

posted @ 2025-11-23 09:53 paulwong 阅读(14) | 评论 (0)编辑 收藏

2025年11月8日 #

Open WebUI + N8N 流式输出

Integrating n8n with Open WebUI: Building advanced AI chatbots and workflows
https://www.pondhouse-data.com/blog/integrating-n8n-with-open-webui

n8nchatui
https://n8nchatui.com/docs
https://www.youtube.com/watch?v=_dmrr7kWRI0

open-webui function:
https://openwebui.com/f/webfox/n8n_streaming

Complete Guide to n8n Chat Streaming Setup
https://sudhanshu-sharma.notion.site/Complete-Guide-to-n8n-Chat-Streaming-Setup-24ed62104585806a8909d1b662209af3

posted @ 2025-11-08 09:03 paulwong 阅读(21) | 评论 (0)编辑 收藏

2025年9月10日 #

微调案例

我如何用 Prompt 工程将大模型调教成风控专家
https://my.oschina.net/u/4090830/blog/18690981


posted @ 2025-09-10 13:25 paulwong 阅读(16) | 评论 (0)编辑 收藏

2025年9月6日 #

RAG提高召回率秘笈

传统的搜索是全文搜索, 即用户提供关键字, 系统将此关键字去数据库中的文本查找, 看文本是否含此关键字, 如有则返回.
这种有个缺点, 如果提供的是关键字的同义词, 则无法搜索了.

于是最新的人工智能技术能解决这个问题, 即只提供同义词之类的也能找出来.

为什么能查找出来呢, 系统将待搜索的文本转成向量, 再将关键词转成向量, 查找欧氏距离或余弦相似度最近的那组向量, 再将此对应的文本返回.

由于文本长度太长, 通常是将文本切割成文本块, 再逐个存储. 这样会导致返回的文本有缺失.

于是产生不同的存储策略, 将文本的属性作为元数据保存了下来, 如果精准的知道其属性, 则可以直接查属性而找到文本.

也可以将此文本生成一段摘要, 也作为元数据保存下来, 关键字先和摘要匹配, 如果相近即返回.

也可以将文本转成全文索引的格式保存下来, 再以文本是否含此关键字进行搜索, 如有则返回.

这样返回的文本多了, 搜索的准确度自然就提高了.

这里推荐Milvus数据库, 将以上机制都放在服务器端, 用户只需调包即可实现, 大大简化的编程.

代码实现:

https://milvus.io/docs/zh-hant/full_text_search_with_langchain.md


书本代码:
https://github.com/huangjia2019/rag-in-action/blob/master/04-向量存储-VectorDB/Milvus/create_milvus_db.py#L100

https://github.com/Tylersuard/EnterpriseRAG/blob/main/Ch03/upload_sql_records_to_ai_search.py#L10

https://github.com/tomasonjo/kg-rag/blob/main/README.md

posted @ 2025-09-06 15:47 paulwong 阅读(108) | 评论 (0)编辑 收藏

2025年8月26日 #

RAG优化

老王AIGC
https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&__biz=MzkzMzc2MjAwOQ==&scene=24&album_id=3853666856078622721&count=3#wechat_redirect


posted @ 2025-08-26 16:57 paulwong 阅读(26) | 评论 (0)编辑 收藏

docker镜像加速


https://github.com/DaoCloud/public-image-mirror

posted @ 2025-08-26 09:59 paulwong 阅读(20) | 评论 (0)编辑 收藏

仅列出标题  下一页