自适应命令行工具

MyOwnMCP 是一个轻量级的自适应命令行工具,能够学习用户的使用模式并提供智能命令建议,适用于本地开发和自动化任务。

  • by Arpitjain1234
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Arpitjain1234/MyOwnMcp

使用说明

MyOwnMCP - 自主学习命令行界面工具

一个轻量级的、可自我学习的命令行界面(CLI)工具,能够适应您的使用习惯并提供智能命令建议。

特性/功能

  • 自我学习命令模式
  • 智能自动补全建议
  • 本地命令执行(MCP服务器)
  • 训练数据导入/导出
  • 完全本地化运营

技术架构

向量存储

目前使用scikit-learn的TF-IDF向量化器和最近邻算法进行命令相似度匹配。数据使用joblib进行持久化存储。

潜在改进措施:

机器学习组件

  • TF-IDF 向量化器:将命令转换为数值向量
  • 最近邻算法:查找相似命令以提供建议
  • Joblib:持久化存储模型和学习到的模式

本地大型语言模型集成(计划中)

你可以通过以下方式增强该工具: Ollama(注:Ollama是一个开源的机器学习框架,用于训练和部署机器学习模型,但直接翻译其名称并无特定含义,因此此处保留原英文名称) 对于;为;给

  • 更好地理解指令
  • 自然语言处理
  • 情境感知建议

示例集成模式:

# Using Ollama for command understanding
from langchain.llms import Ollama
from langchain.embeddings import OllamaEmbeddings

llm = Ollama(model="llama2")
embeddings = OllamaEmbeddings(model="llama2")

安装

  1. 克隆仓库
  2. 安装依赖项:
pip install -r requirements.txt

用法

运行CLI工具:

python mcp.py

带有训练数据:

python mcp.py --training-data your_training_data.yaml

技术文档

向量存储

该工具目前使用:

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.neighbors import NearestNeighbors

数据被持久化存储在 model.joblib 包含:

  • 训练好的TF-IDF向量化器
  • 最近邻模型
  • 历史命令

学习过程

  1. 收到新指令 → 使用TF-IDF进行向量化
  2. 向最近邻模型中添加向量
  3. 模型重新训练
  4. 状态已持久化到磁盘

相关资源

  1. 向量数据库:

  2. 本地大型语言模型(LLMs):

  3. 机器学习: