Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: 测试 release 2 #62

Merged
merged 1 commit into from
Nov 18, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
131 changes: 3 additions & 128 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,138 +48,13 @@ NarratoAI 是一个自动化影视解说工具,基于LLM实现文案撰写、
- 建议最低 CPU 4核或以上,内存 8G 或以上,显卡非必须
- Windows 10 或 MacOS 11.0 以上系统

## 快速开始 🚀
### 1. 申请 Google AI studio 账号
1. 访问 https://aistudio.google.com/app/prompts/new_chat 申请账号
2. 点击 `Get API Key` 申请 API Key
3. 申请的 API Key 填入 `config.example.toml` 文件中的 `gemini_api_key` 配置

### 2. 配置 proxy VPN
> 配置vpn的方法不限,只要能正常访问 Google 网络即可,本文采用的是 chash
1. 记住 clash 服务的端口,一般为 `http://127.0.0.1:7890`
2. 若端口不为 `7890`,请修改 `docker-compose.yml` 文件中的 `VPN_PROXY_URL` 为你的代理地址
```yaml
environment:
- "VPN_PROXY_URL=http://host.docker.internal:7890" # 修改为你的代理端口;host.docker.internal表示物理机的IP
```
3. (可选)或者修改 `config.example.toml` 文件中的 `proxy` 配置
```toml
[proxy]
http = "http://xx.xx.xx.xx:7890"
https = "http://xx.xx.xx.xx:7890"
```

### 3. 使用【整合包】开始 📥 (适用与 Windows 用户)
**NarratoAI 整合包 v0.1.2 发布啦** 🎉🎉🎉

关注微信公众号【NarratoAI助手】,回复关键词【整合包】即可获取最新下载链接!快来试试吧!

注意事项:
- 当前仅提供 Windows 版本,Mac和Linux用户请使用 docker 启动。


### 4. 使用【docker】开始🐳 (适用与 Mac 和 Linux 用户)
#### ① 拉取项目,启动Docker
```shell
git clone https://github.com/linyqh/NarratoAI.git
cd NarratoAI
docker-compose up
```
#### ② 访问Web界面

打开浏览器,访问 http://127.0.0.1:8501

#### ③ 访问API文档

打开浏览器,访问 http://127.0.0.1:8080/docs 或者 http://127.0.0.1:8080/redoc

## 使用方法 🛠️
#### 1. 基础配置,选择模型,填入APIKey,选择模型
> 目前暂时只支持 `Gemini` 模型,其他模式待后续更新,欢迎大家提交 [PR](https://github.com/linyqh/NarratoAI/pulls),参与开发 🎉🎉🎉
<div align="center">
<img src="docs/img001-zh.png" alt="001" width="1000"/>
</div>

#### 2. 选择需要解说的视频,点击生成视频脚本
> 平台内置了一个演示视频,若要使用自己的视频,将mp4文件放在 `resource/videos` 目录下,刷新浏览器即可,
> 注意:文件名随意,但文件名不能包含中文,特殊字符,空格,反斜杠等
<div align="center">
<img src="docs/img002-zh.png" alt="002" width="400"/>
</div>

#### 3. 保存脚本,开始剪辑
> 保存脚本后,刷新浏览器,在脚本文件的下拉框就会有新生成的 `.json` 脚本文件,选择json文件和视频就可以开始剪辑了。
<div align="center">
<img src="docs/img003-zh.png" alt="003" width="400"/>
</div>

#### 4. 检查视频,若视频存在不符合规则的片段,可以点击重新生成或者手动编辑
<div align="center">
<img src="docs/img004-zh.png" alt="003" width="1000"/>
</div>

#### 5. 配置视频基本参数
<div align="center">
<img src="docs/img005-zh.png" alt="003" width="700"/>
</div>

#### 6. 开始生成
<div align="center">
<img src="docs/img006-zh.png" alt="003" width="1000"/>
</div>

#### 7. 视频生成完成
<div align="center">
<img src="docs/img007-zh.png" alt="003" width="1000"/>
</div>

## 开发 💻
1. 安装依赖
```shell
conda create -n narratoai python=3.11
conda activate narratoai
cd narratoai
pip install -r requirements.txt
```

2. 安装 ImageMagick
###### Windows:

- 下载 https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-38-Q16-x64-static.exe
- 安装下载好的 ImageMagick,注意不要修改安装路径
- 修改 `配置文件 config.toml` 中的 `imagemagick_path` 为你的实际安装路径(一般在 `C:\Program Files\ImageMagick-7.1.1-Q16\magick.exe`)

###### MacOS:

```shell
brew install imagemagick
````

###### Ubuntu

```shell
sudo apt-get install imagemagick
```

###### CentOS

```shell
sudo yum install ImageMagick
```
3. 启动 webui
```shell
streamlit run ./webui/Main.py --browser.serverAddress=127.0.0.1 --server.enableCORS=True --browser.gatherUsageStats=False
```
4. 访问 http://127.0.0.1:8501


## 反馈建议 📢

### 👏 1. 可以提交 [issue](https://github.com/linyqh/NarratoAI/issues)或者 [pull request](https://github.com/linyqh/NarratoAI/pulls)
👏 1. 可以提交 [issue](https://github.com/linyqh/NarratoAI/issues)或者 [pull request](https://github.com/linyqh/NarratoAI/pulls)

### 💬 2. [加入开源社区交流群](https://github.com/linyqh/NarratoAI/wiki)
💬 2. [加入开源社区交流群](https://github.com/linyqh/NarratoAI/wiki)

### 👉 3. [常见问题](https://thread-marsupial-df8.notion.site/105866888dab80988650fa063b1df4eb)
📷 3. 关注公众号【NarratoAI助手】,掌握最新资讯

## 参考项目 📚
- https://github.com/FujiwaraChoki/MoneyPrinter
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

代码review如下:

  1. 文档注释:整个文档注释相当齐全,包括功能描述、使用方法、开发指南等。然而,少数地方的注释可能需要稍作调整以提高可读性和一致性。

  2. 配置文件:配置文件示例中的内容可能需要进一步优化以避免潜在问题。

  3. 安全性:GitHub API Key 在 config.example.toml 中应使用环境变量代替直接写明,以避免因配置文件泄露导致的安全问题。

  4. 依赖管理:conda 和 pip 都用于管理依赖项,这可能导致依赖管理混乱。我们建议选择其中一种管理依赖项。

  5. 环境变量:在开发和生产环境中使用环境变量设置 proxy、API Key 等 конфигурационных значений,以避免不必要的依赖于外部文件。

  6. 日志管理:没有看到日志管理相关配置,建议考虑在配置文件中增加日志管理配置项,以方便控制日志级别和输出文件。

  7. 异常处理:未发现对异常情况的处理。需要增加 try-except 块来有效地处理和记录异常,避免应用程序意外奔溃。

  8. 规范名称和组织结构:在 Git 仓库中,保持一致的命名和组织结构对于其他开发人员的阅读和维护工作来说非常有帮助。

  9. 分支管理:建议在 Git 仓库中启用分支管理限制,防止未经检查的代码 push 到主分支,这意味着 master 分支应该保留稳定性和测试覆盖率的记录。

  10. 其他:在测试代码时考虑集成其他 CI/CD 工具例如 Jenkins、Travis、CircleCI 等。

该项目基于markdown文档和python语言进行管理。在github中,对文档进行维护和bug记录是重要的工作。

Expand Down
Loading