V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
pmpmp
V2EX  ›  分享创造

LLM 调用为什么不能像 requests 一样简单?上下文管理就不能自动搞定吗?

  •  
  •   pmpmp · 12 天前 · 1714 次点击

    兄弟们,我今天在 github 上发了一个库 —— chak, 极简风格连接全球主流模型,重点是 —— 可以自动管理上下文,确实方便

    项目在这里:https://github.com/zhixiangxue/chak-ai

    说说我为啥要写这个库哈~

    我自己的几个痛点:

    1. OpenAI 的 API 很方便,但上下文得自己管
      每次对话一长,自己算 token 、截断历史、写策略...重复劳动,烦。

    2. 虽然都支持 OpenAI API,但各家文档翻起来也烦
      想用 DeepSeek?翻文档找 base_url 和 model 名。想用百炼?火山?腾讯云?再翻一遍文档。切换模型?又得改配置、查参数。多数时候我只是想快速验证个想法,不想在文档里跳来跳去,烦。

    3. 虽然有 one-api 、OpenRouter 这种聚合方案
      但要自己部署服务、配置路由、管理密钥...我就想写个脚本测试模型,不想搞运维,烦。

    4. 想要个本地网关?自己搭又麻烦
      有时候就想在本地起个服务,快速测试不同厂商的模型,最好还有个 UI 能直接对话。但现有方案要么配置复杂,要么功能太重,烦。

    所以我撸了个库,叫 chak 。

    我的目标特别简单:能不能搞一个像 requests 一样简单的 LLM 客户端?

    • requests 几行代码就能发 HTTP 请求
    • chak 几行代码就能和全球任意 LLM 对话
    • 不要花里胡哨的东西,开箱即用,上下文自动管理
    • 10 分钟搞不定都算我失败了

    看代码就懂了:

    pip install chakpy[all]
    
    import chak
    
    # 就这么简单,像 requests.get()一样直观
    conv = chak.Conversation("deepseek/deepseek-chat", api_key="your_key")
    print(conv.send("介绍一下 Python 装饰器").content)
    
    # 继续聊,一直聊,上下文自动帮你管
    print(conv.send("那装饰器用类怎么实现?").content)
    
    # 换个模型?改一行就行
    conv2 = chak.Conversation("openai/gpt-4o-mini", api_key="your_key")
    

    它不是要取代 OpenAI SDK 或 one-api ,而是:

    • OpenAI SDK: 功能强大,但上下文、重试、格式转换都得自己写
    • one-api: 功能齐全,但得自己部署服务、配置路由、管理密钥
    • chak: 开箱即用,import 就能用,上下文自动管理,配置零负担

    上下文管理?内置 FIFO 、总结、LRU 三种策略,自动触发。
    多家供应商?provider/model统一格式,支持 18+家。
    复杂配置?不存在的,api_key 一给就能用。
    本地网关?chak.serve()一行代码,内置对话界面,1 分钟就能和不同厂商模型对话。

    如果你也:

    • 烦手动管理上下文
    • 烦翻各家文档找配置
    • 烦部署和配置复杂的网关服务
    • 想快速搭个本地网关测试模型

    可以试试。纯粹是解决自己的痛点,希望能帮到有同样困扰的人

    觉得有用?给个 Star 吧 ⭐ → https://github.com/zhixiangxue/chak-ai

    欢迎交流,有兴趣的兄弟给我留言哈~

    8 条回复    2025-11-13 19:14:57 +08:00
    raycool
        1
    raycool  
       12 天前
    不错,最近有对接大模型的需求,先 star
    ITisCool
        2
    ITisCool  
       12 天前
    可以支持 tools call 、MCP 么?支持的话更有实用价值
    BeautifulSoap
        3
    BeautifulSoap  
       12 天前
    看了下似乎根本不支持 function call 啊,就是个单纯的包装了下对话上下文管理的 warpper 吗
    这样应用场景似乎不大啊
    pmpmp
        4
    pmpmp  
    OP
       12 天前
    @ITisCool 还没发呢哈,估计就这几天就支持了,有什么需求欢迎随时给我 issue ,哈哈哈,感谢关注🙏
    pmpmp
        5
    pmpmp  
    OP
       12 天前   ❤️ 1
    @BeautifulSoap 还没发呢哈,估计就这几天就支持了,有什么需求欢迎随时给我 issue ,哈哈哈,感谢关注🙏
    pmpmp
        6
    pmpmp  
    OP
       12 天前
    function call 也好、MCP 也好,也是个话题,而且是个很大的话题,demo 貌似都能 work ,一旦想认真用,就一堆问题,这也是让我很烦的点,正在 coding 中,希望能让 fc 或者 mcp 也做到 “不用管”
    ITisCool
        7
    ITisCool  
       12 天前   ❤️ 1
    @pmpmp #6 是的,做得太多又变成了一个 Chatbot Client 了。一般类似你这个出发点的需求我都是打开 Cherry Studio 来测模型的。但是最近遇到一个本地部署的 LLM ,我需要测试其做 agent 的能力,对方给接口配置了 SSL 自签名证书😅,搞得 Cherry Studio 请求验证 SSL 失败没法测,我只能用 OpenAI SDK (传入 httpx.Client(verify=False)) 来发请求测试。所以你这个库要是支持 function call 、MCP 就刚好符合我这种测试需求了。
    pmpmp
        8
    pmpmp  
    OP
       9 天前
    @ITisCool
    @BeautifulSoap
    @ITisCool

    更新了,支持 mcp 了,兄弟们: https://github.com/zhixiangxue/chak-ai

    期待你们试用一下🙏
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2541 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:13 · PVG 15:13 · LAX 23:13 · JFK 02:13
    ♥ Do have faith in what you're doing.