V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huangyizheng
V2EX  ›  程序员

分享最近做的一个命令行小玩具: 用 LLM 做命令生成

  •  2
     
  •   huangyizheng ·
    huangyz0918 · 13 天前 · 1152 次点击

    最近感觉 LLM 和 RAG (Retrieval Augmented Generation) 的应用特别的火,特别是在北美湾区这里,就想说闲下来研究一下做点什么。以练手的心态做了个开源小玩具: Termax (Github 链接)

    一开始主要的功能就是能够让程序员在命令行里面使用自然语言生成想要的命令。但是考虑到大家使用的环境不一样,所以如果直接做命令生成的话效果可能不好(比如 Linux 生成了 powershell 命令),所以想到可以插入一些用户的环境数据去改善大模型的输出。

    另外一种使用 RAG 的方式(我觉得很多 LLM agent 都在使用类似的思路),就是把“成功的”输出样本缓存下来给之后的模型作为参考 -- 这样大模型就会变得更加贴合用户的使用习惯。Termax 这边是会把没有报错且被用户成功运行的输出缓存下来,让之后的请求去参考,事实证明确实会让程序效果好很多。

    这是一些小 demo

    BTW ,作为一个很懒的人……我感觉大模型实际上可以预测我下一个命令想要做什么,比如我经常需要重复 git add ., git commit - m ..., 和 git push 这么一系列的操作。我就在想:能不能让模型帮我预测一下我的意图,然后猜出我要做什么(类似于结合上下文的命令提示):

    我在 Termax 里面做了个小功能,但是有的时候猜的不是很准 hhh

    不过有的人可能会考虑到 shell command 历史可能会包含敏感的信息,所以感觉并不是所有人都会愿意用这个功能。

    不过,还是欢迎大家帮忙测试测试这个小玩意儿,我们顺便做了 bash, zsh, 和 fish 的插件,这样就可以直接用快捷键调用命令生成了。欢迎支持 and 提建议呀

    Github: https://github.com/huangyz0918/termax/tree/main

    8 条回复    2024-04-19 01:57:49 +08:00
    ByteCat
        1
    ByteCat  
       13 天前
    很有趣,来学习一下,不过这个和 GitHub Copilot CLI 有什么区别,虽然都没用过哈哈
    noahlias
        2
    noahlias  
       13 天前
    你说的是 github copilot cli 吗
    lawsiki
        3
    lawsiki  
       12 天前
    nice ,已 star ,不过 api 最好可以设置自定义 URL ,很多人用的中转站
    HowardChan
        4
    HowardChan  
       12 天前
    已 star ,希望支持 Ollama 。
    huangyizheng
        5
    huangyizheng  
    OP
       12 天前
    @lawsiki 非常好的 idea!
    huangyizheng
        6
    huangyizheng  
    OP
       12 天前
    @HowardChan 马上支持 Ollama : )))
    huangyizheng
        7
    huangyizheng  
    OP
       11 天前
    @lawsiki 已支持 : )
    huangyizheng
        8
    huangyizheng  
    OP
       11 天前
    @HowardChan 已支持
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5838 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 02:02 · PVG 10:02 · LAX 19:02 · JFK 22:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.