展示HN:Eulix - 大型代码库的代码导航工具
嗨,我一直在开发 Eulix,这是一个用于导航大型代码库的工具。它将代码库解析为符号、调用图和其他结构信息,然后结合关键词和语义检索来查找相关代码。
我在 OpenStack(约 690 万行代码 / 29,000 个文件)上进行了测试。一次关于 Nova 的 PCI 直通调度的查询,在索引完成后,相关的过滤器、助手和相关调用路径在不到一秒的时间内就被提取出来。
有些查询根本不需要大型语言模型(LLM),因为 Eulix 可以直接从结构化的代码库数据中回答。
它是开源的,可以在本地运行:
[https://github.com/Nurysso/eulix](https://github.com/Nurysso/eulix)
我特别希望能得到那些在代码搜索、静态分析或大型单体仓库方面有经验的人的反馈。
顺便提一下,它可能也能处理超过 3000 万行代码的代码库,但我还没有能够测试如此庞大的仓库,因为我没有足够好的 GPU 来嵌入解析器的输出! :)
查看原文
Hey I've been working on Eulix, a tool for navigating large codebases.<p>It parses a repository into symbols, call graphs and other structural information, then combines that with keyword and semantic retrieval to find relevant code.<p>I tested it on OpenStack (~6.9M LOC / 29k files). One query about Nova's PCI passthrough scheduling pulled back the relevant filters, helpers and related call paths in well under a second once indexed.<p>Some queries don't need an LLM at all, since Eulix can answer directly from the structured codebase data.<p>It's open source and runs locally:<p><a href="https://github.com/Nurysso/eulix" rel="nofollow">https://github.com/Nurysso/eulix</a><p>I'd especially like feedback from people who've worked on code search, static analysis, or large monorepos.<p>on a side note it may be able to handle 30M+ loc codebase too, I haven't been able to test such huge repos cause I don't have a good enough gpu to embed parsers output! :)