现在有没有可以阅读完整项目的 AI - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
LeviMarvin
V2EX    程序员

现在有没有可以阅读完整项目的 AI

  •  
  •   LeviMarvin
    LeviMarvin 2024-07-12 22:44:50 +08:00 4226 次点击
    这是一个创建于 454 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,需要一个可以分析整个中小型项目、系统的 AI

    10 条回复    2024-07-19 19:06:57 +08:00
    ztm0929
        1
    ztm0929  
       2024-07-12 23:01:37 +08:00
    同问,据说 GitHub Copilot Enterprise 也就是企业版可以实现完整仓库的理解。一直在找平替。
    SolarAA
        2
    SolarAA  
       2024-07-12 23:11:05 +08:00
    Akagi201
        3
    Akagi201  
       2024-07-12 23:23:31 +08:00
    AnythingLLM, 其实个人感觉非内网项目, 开源项目的话, 直接贴出代码上文, 问 gemini 就能回答的很好
    TAsdd
        4
    TAsdd  
       2024-07-13 16:09:33 +08:00
    lee88688
        5
    lee88688  
       2024-07-13 18:30:34 +08:00
    @SolarAA 我用过 cursor ,他对整个项目的理解其实是本地对项目代码创建向量索引,问问题的时候类似 RAG 先搜索将搜索结果放入 LLM 上下文中。
    slowgen
        6
    slowgen  
       2024-07-14 00:44:44 +08:00
    现在大模型支持的上下文也就百万 token ( Llama-3-8B-Instruct-Gradient-1048k 、glm-4-9b-chat-1m 、internlm2_5-7b-chat-1m )到 4 百万 token(Llama-3-8B-Instruct-Gradient-4194k),想在对话里塞进中小型项目可能够用,如果不够用那只能用 RAG 或者 GraphRAG 的形式。

    付一个简单的 RAG 例子,不到 20 行就可以和代码仓库对话
    ```python
    from llama_index.core import SimpleDirectoryReader
    from llama_index.embeddings.ollama import OllamaEmbedding
    from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settigs
    from llama_index.llms.ollama import Ollama

    ollama_embedding = OllamaEmbedding(
    model_name="mxbai-embed-large:latest",
    base_url="http://10.6.6.240:11435",
    )
    llm = Ollama(model="deepseek-coder-v2:16b-lite-instruct-fp16", request_timeout=240.0, base_url='http://10.6.6.18:9090',
    context_window=32000,
    system_prompt="你是一个专业的架构师,接下来的问题请以架构师的角度回答,如果涉及到代码输出,则代码要充分利用异步非阻塞特性,注释丰富,多打印日志,容错性好,对外部输入进行充分校验。")
    Settings.llm = llm
    Settings.embed_model = ollama_embedding

    documents = SimpleDirectoryReader(input_dir="代码目录", recursive=True, required_exts=['.扩展名']).load_data()
    index = VectorStoreIndex.from_documents(documents)
    query_engine = index.as_query_engine()
    respOnse= query_engine.query(
    "这个项目都有什么功能?")

    print(response)

    ```
    RAG 说白了就是在你问的问题之前,用相似搜索来把 [和问题关键字近似的代码片段] 追加到你问题后面,在提示词里 [加几句话让模型参考追加的内容] ,前置步骤切分代码片段创建向量这个步骤容易切碎导致丢失代码。更有碰到宏观问题就歇逼的现象,比如上面例子的“这个项目”,近似搜索压根不知道你指的是哪些代码。

    GraphRAG ( https://github.com/microsoft/graphrag )和 https://docs.llamaindex.ai/en/stable/examples/index_structs/knowledge_graph/Neo4jKGIndexDemo/ 又进了一步,用知识图谱的方式来找代码追加到上下文,在应对相对宏观的问题上有优势。比如“这个项目都有什么功能?”这种问题,对于“这些代码”可能给你找全一点,比如“下单流程有哪些步骤”可能把什么优惠券、会员积分、秒杀啥的都找出来,而不是仅仅搜索 order 相关的代码。
    LeviMarvin
        7
    LeviMarvin  
    OP
       2024-07-18 09:20:49 +08:00
    @Akagi201 我在本地部署了 ollma llama3 anything llm ,感觉不智能,而且他能添加 github 仓库竟然不能添加本地仓库
    LeviMarvin
        8
    LeviMarvin  
    OP
       2024-07-18 09:33:42 +08:00
    @Akagi201 我知道为啥不智能了,我只下载、添加了仓库、文档,没有把这些添加到 workspace ,我在试一下
    twig
        9
    twig  
       2024-07-19 19:05:58 +08:00
    @Akagi201 我刚魔改了一番 AnythingLLM ,之后用 Docker 部署到了 Railway.app 。但是这家伙的文档解析不行,网页也出 bug ,PDF 也出 bug 。让我很崩溃。
    twig
        10
    twig  
       2024-07-19 19:06:57 +08:00
    @LeviMarvin 可能是因为作为一个纯纯的 JS 项目,不好访问本地文件系统吧。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3504 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 05:07 PVG 13:07 LAX 22:07 JFK 01:07
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86