综合介绍
Austen 是一个开源的 AI 工具,它使用 Angular 框架和 Analogjs 初始化,结合 Mermaidjs 技术生成图表,帮助用户分析书籍中的角色关系。用户可以输入 Open Library 中的书籍名称,Austen 会通过 AI 自动生成可视化的角色关系图,并支持保存、分享和下载。这个工具适合文学爱好者、学生或开发者,项目完全免费,托管在 GitHub 上,任何人都可以参与改进。
功能列表
- 搜索并分析书籍:支持从 Open Library 搜索任何书籍并进行角色分析。
- AI 驱动角色关系提取:利用 AI 技术,自动识别书籍中的人物及其关系。
- 生成 Mermaidjs 图表:将分析结果转化为直观的关系图表。
- 保存和下载图表:生成图表后可保存到数据库,并下载为 SVG 或 PNG 格式。
- 公开或私密分享:用户可以选择将图表设为公开,让他人查看,或保持私密。
- 浏览他人图表:在“发现”页面查看其他用户公开的图表。
- 点赞功能(开发中):未来可为喜欢的图表点赞或取消点赞。
使用帮助
Austen 需要本地安装运行,目前没有在线版本。以下是详细的安装和使用指南,让你轻松上手。
安装流程
- 下载项目代码
在终端输入以下命令,将项目克隆到本地:
git clone https://github.com/herol3oy/austen.git
然后进入项目目录:
cd austen
- 安装依赖包
使用 npm 安装所需软件包:
npm install
- 配置环境变量
复制示例文件并重命名为.env
:
cp .env.example .env
打开 .env
文件,填入以下信息:
DEEPSEEK_API_KEY
:从 DeepSeek 官网注册获取的 API 密钥。VITE_PUBLIC_SUPABASE_URL
:Supabase 项目的 URL。VITE_PUBLIC_SUPABASE_ANON_KEY
:Supabase 的匿名密钥。
如果需要,还可以配置 OpenAI 的密钥(可选)。
- 设置 Supabase 数据库
- 访问 https://supabase.com,创建一个新项目。
- 启用身份验证(Authentication)。
- 在公共模式(public schema)下创建
graphs
表,字段如下:id
(uuid,主键)book_name
(text,非空)author_name
(text,非空)svg_graph
(text,非空)mermaid_syntax
(text,非空)emojis
(text,可选)user_id
(uuid)is_public
(boolean,默认 false)created_at
(timestamp)
保存后,将项目 URL 和匿名密钥填入.env
。
- 启动本地服务器
输入以下命令运行项目:
npm run dev
打开浏览器,访问 http://localhost:5173
(端口可能因配置不同而变化)。
- 部署到生产环境
如果想部署到服务器,运行:
npm run build
构建完成后,可上传到 Cloudflare Pages 等平台。
如何使用主要功能
- 生成角色关系图
启动后,在首页输入书名和作者(例如“The Wizard of Oz” by L. Frank Baum)。点击“生成”,AI 会分析书籍内容,几秒后显示 Mermaidjs 图表。图表会展示角色之间的关系,比如 Dorothy 和 Toto 的“宠物”关系。 - 保存和下载图表
生成图表后,点击保存按钮,数据会存储到 Supabase。你可以下载图表为 SVG 或 PNG 格式,方便分享或打印。 - 分享图表
在“我的图表”页面,找到你生成的图表。选择“公开”选项,其他用户就能在“发现”页面看到它。如果不想分享,保持“私密”即可。 - 浏览他人图表
在“发现”页面,可以查看其他用户公开的图表。比如,有人分享了《傲慢与偏见》的角色关系图,你可以直接欣赏。 - 点赞功能(待实现)
当前版本还没有点赞按钮。开发者计划添加“喜欢”和“取消喜欢”功能,完成后你能为喜欢的图表投票。
操作流程示例
想分析《绿野仙踪》?试试这个步骤:
- 在首页输入书名“The Wizard of Oz”和作者“L. Frank Baum”。
- 点击“生成”,等待几秒。
- 查看图表:Dorothy 是核心人物,与 Toto、Scarecrow 等有连接。
- 点击“保存”,选择“公开”。
- 去“我的图表”页面下载 SVG 文件,或在“发现”页面查看他人反馈。
技术细节
- 界面基于 Angular Material,美观且易用。
- 图表由 Mermaidjs 绘制,支持自定义主题颜色。
- AI 分析依赖 DeepSeek 或 OpenAI,确保结果准确。
应用场景
- 文学研究
爱好者可以用 Austen 分析《简·爱》的角色网络,直观看到 Jane 和 Rochester 的关系。 - 课堂教学
老师生成《哈利·波特》的图表,帮助学生理解 Harry、Ron 和 Hermione 的友情。 - 技术学习
开发者可以研究代码,学习如何用 Angular 和 Supabase 打造类似工具。
QA
- 支持哪些书籍?
只要 Open Library 有数据的书籍都可以,比如《傲慢与偏见》《绿野仙踪》。 - 图表可以编辑吗?
当前版本不支持直接编辑,但你可以修改 Mermaidjs 代码后重新生成。 - 需要付费吗?
不需要,项目完全免费。但运行需要自己配置 API 密钥和 Supabase。 - 为什么用 Supabase?
它负责存储图表数据,支持公开分享和用户管理。