OpenViking 项目结构地图

顶层重点目录

openviking/

Python 主库,最值得优先阅读。

内部能看到这些子模块:

  • client
  • core
  • crypto
  • eval
  • message
  • metrics
  • models
  • parse
  • prompts
  • pyagfs
  • resource
  • retrieve
  • server
  • service
  • session
  • storage
  • telemetry
  • utils

openviking_cli/

CLI 相关代码。这里面有:

  • 启动服务器
  • setup wizard
  • doctor 检查
  • Rust CLI 包装
  • HTTP client

crates/

Rust 工作区组件:

  • ov_cli
  • ragfs
  • ragfs-python

说明这个项目不只是 Python 包,还包含 Rust 生态的一部分。

src/

C/C++ 层文件,例如:

  • abi3_engine_backend.cpp
  • abi3_x86_caps.cpp
  • CMakeLists.txt

说明项目还有本地编译的底层扩展。

bot/

更像上层 Agent / Bot 应用层,甚至自带自己的 README、tests、workspace、deploy 等。

examples/

最适合新手上手的目录。

docs/

文档目录。还有 docs/design/,说明项目对一些设计决策有专门文档。

tests/

测试非常多,覆盖:

  • cli
  • client
  • engine
  • eval
  • integration
  • retrieve
  • server
  • service
  • session
  • storage
  • telemetry
  • vectordb

benchmark/

说明作者不仅关心功能,也关心效果评测。

小白版总结

这不是一个“小而美单模块库”,而是一个:

  • 有 Python SDK
  • 有服务端
  • 有 CLI
  • 有底层本地扩展
  • 有 Rust 子项目
  • 有 bot 层
  • 有评测体系 的综合项目。

对新手的阅读建议

第一步只看这些

  • README.md
  • examples/quick_start.py
  • openviking/__init__.py
  • openviking/sync_client.py
  • openviking_cli/server_bootstrap.py

先不要急着看这些

  • crates/
  • src/
  • third_party/
  • benchmark/

原因很简单:这些对理解“项目怎么用”不是第一优先级。