Skip to content

Latest commit

 

History

History
602 lines (440 loc) · 25.3 KB

File metadata and controls

602 lines (440 loc) · 25.3 KB

GitHub  |  Gitee  |  Atomgit

简体中文 | 繁體中文 | English | ไทย | Tiếng Việt | 日本語 | Русский

Toonflow Logo

Toonflow

Nhà máy Phim ngắn AI
Chỉ với vài cú click, tiểu thuyết lập tức biến thành phim!
Kịch bản AI × Hình ảnh AI × Tạo siêu tốc 🔥

Stars Badge Apache-2.0 License Badge release

🚀 Dự án Phim ngắn All-in-One: Từ văn bản đến nhân vật, từ storyboard đến video hoàn chỉnh. Tự động hóa toàn bộ quy trình bằng AI – không rào cản, tăng hiệu suất sáng tạo lên gấp 10 lần!


🌐 Hỗ trợ Đa ngôn ngữ

Toonflow hỗ trợ giao diện với các ngôn ngữ sau:

Ngôn ngữ Language
简体中文 Chinese (Simplified)
繁體中文 Chinese (Traditional)
English English
ไทย Thai
Tiếng Việt Vietnamese
日本語 Japanese
Русский Russian

💡 Đang cập nhật thêm nhiều ngôn ngữ, hoan nghênh bạn đóng góp bản dịch!


🌟 Tính năng Chính

Toonflow là công cụ AI chuyên tạo phim ngắn và truyện tranh, có khả năng tự động biến tiểu thuyết thành phim chỉ trong một quy trình liền mạch. Từ văn bản gốc, AI sẽ tạo nhân vật, viết kịch bản, thiết kế phân cảnh và tổng hợp video hoàn chỉnh – giúp bạn sản xuất phim ngắn nhanh chóng, thông minh và tiết kiệm chi phí tối đa.

  • Tạo Nhân vật Tự động Hệ thống phân tích tiểu thuyết gốc, thông minh nhận diện và xây dựng hồ sơ nhân vật chi tiết (ngoại hình, tính cách, danh tính, mối quan hệ…). Tạo nền tảng vững chắc cho kịch bản và hình ảnh sau này.
  • Tạo Kịch bản Thông minh Dựa trên các chương/sự kiện bạn chọn, AI tự động xây dựng kịch bản có cấu trúc rõ ràng, bao gồm hội thoại tự nhiên, mô tả cảnh quay và hướng phát triển cốt truyện – chuyển đổi văn học sang kịch bản phim một cách hiệu quả.
  • Tạo Phân cảnh (Storyboard) Từ kịch bản, hệ thống tự động sinh ra các prompt phân cảnh và thiết kế khung hình chi tiết. Bao gồm tiền cảnh/trung cảnh/hậu cảnh, hành động nhân vật, đạo cụ và bố cục điện ảnh – tạo ra lộ trình hoàn chỉnh sẵn sàng cho việc sản xuất video.
  • Tổng hợp & Chỉnh sửa Video Tích hợp công nghệ AI hình ảnh và video để tạo ra các đoạn clip chất lượng cao. Hỗ trợ chỉnh sửa trực tuyến linh hoạt, cho phép bạn tinh chỉnh theo ý muốn, giúp toàn bộ quy trình sáng tạo phim diễn ra mượt mà và cực kỳ nhanh chóng.

📦 Ứng dụng Thực tế

  • Sáng tạo nội dung video ngắn
  • Thử nghiệm chuyển thể tiểu thuyết thành phim ngắn
  • Công cụ AI chuyển thể văn học thành video
  • Phát triển kịch bản và tạo bản mẫu nhanh (Rapid Prototyping)
  • Tạo tài liệu video chất lượng cao

🔰 Hướng dẫn Sử dụng

📺 Hướng dẫn bằng Video

https://www.bilibili.com/video/BV1oXD7BqEqJ Toonflow - 12 phút làm quen với Video AI

Toonflow - 12 phút làm quen nhanh với Video AI 👉 Nhấn để xem

📱 Quét mã QR để xem video trên điện thoại Quét mã QR để xem video


🚀 Cài đặt

Điều kiện tiên quyết

Trước khi cài đặt và sử dụng phần mềm, vui lòng chuẩn bị:

  • ✅ Địa chỉ API của Mô hình ngôn ngữ lớn (LLM)
  • ✅ Địa chỉ API của dịch vụ video Sora hoặc Doubao
  • ✅ Địa chỉ API của dịch vụ tạo ảnh Nano Banana Pro

Cài đặt trên máy cá nhân (Local)

1. Tải xuống & Cài đặt

Hệ điều hành GitHub Atomgit Tải qua Quark Drive Mô tả
Windows Release Release Quark Drive Bản cài đặt chính thức
Linux Release Release Quark Drive Bản cài đặt chính thức
macOS Release Release Quark Drive Bản cài đặt chính thức

Caution

Với hệ điều hành MacOS, vui lòng vào "Cài đặt hệ thống" -> "Quyền riêng tư & Bảo mật" để cấp quyền mở ứng dụng, nếu không phần mềm có thể không mở được do vấn đề chứng chỉ.

Tham khảo hướng dẫn Zhihu: https://www.zhihu.com/question/433389276

Do giới hạn môi trường Gitee OS và giới hạn kích thước tệp tải lên của Release, chúng tôi tạm thời không cung cấp link tải qua Gitee Release.

2. Khởi chạy Dịch vụ

Sau khi cài đặt xong, hãy mở chương trình để bắt đầu sử dụng.

⚠️ Đăng nhập lần đầu Tài khoản: admin
Mật khẩu: admin123

Triển khai bằng Docker

Điều kiện tiên quyết

  • Đã cài đặt Docker (Phiên bản 20.10+)

Cách 1: Triển khai trực tuyến

Đang hoàn thiện, tạm thời sử dụng cách Build tại máy (Local build).

Cách 2: Build tại máy (Local build)

Sử dụng mã nguồn có sẵn để build trực tiếp. Phù hợp với lập trình viên hoặc người dùng đã clone repository. (Yêu cầu cài đặt git trên máy):

# Clone dự án (Bỏ qua nếu đã clone)
git clone https://github.com/HBAI-Ltd/Toonflow-app.git
cd Toonflow-app

# Sử dụng docker-compose để build và chạy
yarn docker:local

# Hoặc build thủ công
docker build -t toonflow .
docker run -d -p <Port trên máy>:10588 -v <Đường dẫn dữ liệu trên máy>:/app/data toonflow

# Sau đó, truy cập giao diện qua đường dẫn /web/index.html bằng Port đã thiết lập
# Ví dụ: http://localhost:10588/web/index.html

Cấu hình Cổng dịch vụ (Port)

Cổng (Port) Chức năng Port Mapping
10588 Giao diện phần mềm 10588:10588

Giải thích Biến môi trường:

Biến (Variable) Giải thích
NODE_ENV Môi trường chạy, prod là môi trường Product (sản xuất)
PORT Port lắng nghe của dịch vụ (Mặc định: 10588)
OSSURL Địa chỉ truy cập lưu trữ file, dùng cho các tài nguyên tĩnh (Static)

Triển khai trên Máy chủ Đám mây (Cloud)

1. Yêu cầu Môi trường Máy chủ

  • Hệ điều hành: Ubuntu 20.04+ / CentOS 7+
  • Node.js: 24.x (Khuyên dùng, Tối thiểu 23.11.1+)
  • RAM: 2GB+

2. Triển khai Máy chủ

1. Cài đặt Môi trường

# Cài đặt Node.js
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 24
# Cài đặt Yarn và PM2
npm install -g yarn pm2

2. Triển khai Dự án

Clone từ GitHub:

cd /opt
git clone https://github.com/HBAI-Ltd/Toonflow-app.git
cd Toonflow-app
yarn install
yarn build

Clone từ Gitee (Khuyên dùng tại TQ):

cd /opt
git clone https://gitee.com/HBAI-Ltd/Toonflow-app.git
cd Toonflow-app
yarn install
yarn build

3. Cấu hình PM2

Tạo tệp pm2.json:

{
  "name": "toonflow-app",
  "script": "data/serve/app.js",
  "instances": "max",
  "exec_mode": "cluster",
  "env": {
    "NODE_ENV": "prod",
    "PORT": 10588,
    "OSSURL": "http://127.0.0.1:10588/"
  }
}

Giải thích Biến môi trường:

Biến (Variable) Giải thích
NODE_ENV Môi trường chạy, prod là môi trường Product
PORT Cổng lắng nghe của dịch vụ (Port)
OSSURL Địa chỉ truy cập lưu trữ file, dùng cho tài nguyên tĩnh

4. Khởi chạy Dịch vụ

pm2 start pm2.json
pm2 startup
pm2 save

5. Các lệnh PM2 thường dùng

pm2 list              # Xem danh sách tiến trình
pm2 logs toonflow-app # Xem log (nhật ký)
pm2 restart all       # Khởi động lại dịch vụ
pm2 monit             # Mở bảng điều khiển giám sát

⚠️ Đăng nhập lần đầu Tài khoản: admin
Mật khẩu: admin123

6. Triển khai trang web Frontend

Nếu bạn cần triển khai riêng hoặc tùy chỉnh giao diện Frontend, vui lòng tham khảo Repository Frontend:

💡 Lưu ý: Repository này đã được tích hợp sẵn tài nguyên Frontend đã build. Người dùng thông thường không cần tự triển khai Frontend riêng. Repository Frontend chỉ dành cho các nhà phát triển muốn tùy chỉnh chuyên sâu.


🔧 Hướng dẫn Quy trình Phát triển (Development Workflow)

Caution

🚧 Quy định nộp PR (Pull Request) 🚧

⛔ Nhánh master KHÔNG chấp nhận bất kỳ PR nào | ✅ Vui lòng gửi PR vào nhánh develop

Chào mừng các nhà phát triển tham gia đóng góp cho Toonflow. Nếu có hứng thú, vui lòng liên hệ với quản trị viên ACT trong nhóm giao lưu.

🛠️ Công nghệ sử dụng (Tech Stack)

Phân loại Công nghệ
Môi trường Node.js 23.11.1+
Ngôn ngữ TypeScript 5.x
Backend Express 5
Cơ sở dữ liệu SQLite (better-sqlite3 / knex)
Tích hợp AI Vercel AI SDK (OpenAI / Anthropic / Google / DeepSeek / Zhipu / MiniMax / Qwen / xAI)
Suy luận Local @huggingface/transformers (ONNX)
Real-time Socket.IO
Ứng dụng Desktop Electron 40
Xử lý ảnh Sharp
Container Docker

Chuẩn bị Môi trường Phát triển

  • Node.js: Yêu cầu phiên bản 23.11.1 trở lên
  • Yarn: Khuyến nghị sử dụng làm Package Manager

Khởi chạy Dự án nhanh

  1. Clone dự án

    Clone từ GitHub:

    git clone https://github.com/HBAI-Ltd/Toonflow-app.git
    cd Toonflow-app

    Clone từ Gitee:

    git clone https://gitee.com/HBAI-Ltd/Toonflow-app.git
    cd Toonflow-app
  2. Cài đặt Dependencies

    Chạy lệnh sau tại thư mục gốc của dự án:

    yarn install
  3. Khởi chạy môi trường Dev

    Dự án bao gồm Backend APITrang Frontend. Tùy nhu cầu mà chọn cách khởi chạy:

    • Cách 1: Chỉ chạy Backend API

      yarn dev

      ⚠️ Lệnh này chỉ khởi chạy Backend API (Port 10588), không bao gồm giao diện Frontend. Khi truy cập http://localhost:10588 chỉ có thể gọi API. Nếu muốn sử dụng giao diện, vui lòng chạy Frontend riêng hoặc dùng chế độ GUI bên dưới.

    • Cách 2: Khởi chạy Client Desktop Electron (Khuyên dùng)

      yarn dev:gui

      Lệnh này sẽ chạy đồng thời Backend và cửa sổ Desktop Electron với giao diện Frontend đã tích hợp sẵn. Mở lên là có thể sử dụng ngay mà không cần cấu hình thêm. Phù hợp nhất cho lập trình viên muốn trải nghiệm toàn bộ tính năng.

    • Cách 3: Chạy ở chế độ Product (Sản xuất)

      yarn start

      Chạy trực tiếp dịch vụ sau khi đã build (Cần chạy lệnh yarn build trước).

  4. Đóng gói dự án (Build / Pack)

    • Biên dịch tệp TypeScript:

      yarn build
    • Đóng gói thành tệp thực thi cho Windows:

      yarn dist:win
    • Đóng gói thành tệp thực thi cho MacOS:

      yarn dist:mac
    • Đóng gói thành tệp thực thi cho Linux:

      yarn dist:linux
  5. Kiểm tra chất lượng mã (Lint)

    • Kiểm tra cú pháp và quy chuẩn toàn cục:

      yarn lint
  6. Bảng điều khiển Debug AI (Tùy chọn)

    Mở công cụ Debug trực quan của AI SDK để tiện theo dõi các lời gọi AI:

    yarn debug:ai

Phát triển Frontend

Nếu bạn cần chỉnh sửa giao diện Frontend, vui lòng chuyển sang kho lưu trữ Frontend riêng:

Sau khi build Frontend xong, hãy copy toàn bộ thư mục dist vào thư mục data/web của dự án này để tích hợp.

Cấu trúc Dự án

📂 build/                    # Sản phẩm sau khi build
📂 data/                     # Dữ liệu Runtime
│  ├─ 📂 models/             # Mô hình suy luận Local (ONNX)
│  ├─ 📂 oss/                # Lưu trữ Object (ảnh, nhân vật, cảnh)
│  ├─ 📂 serve/              # Cổng vào môi trường Production
│  ├─ 📂 skills/             # Prompt kỹ năng của Agent
│  └─ 📂 web/                # Frontend đã build (tích hợp sẵn)
📂 docs/                     # Tài liệu và hình ảnh
📂 env/                      # Cấu hình môi trường
📂 scripts/                  # Script hỗ trợ và Build
📂 src/
├─ 📂 agents/                # Module AI Agent
│  ├─ 📂 productionAgent/    # Agent Sản xuất (Production)
│  └─ 📂 scriptAgent/        # Agent Kịch bản (Script)
├─ 📂 lib/                   # Thư viện chung (Khởi tạo Database, định dạng Response)
├─ 📂 middleware/            # Middleware
├─ 📂 routes/                # Các Module Routing
│  ├─ 📂 agents/             # Quản lý bộ nhớ Agent
│  ├─ 📂 artStyle/           # Quản lý phong cách nghệ thuật
│  ├─ 📂 assets/             # Quản lý tài nguyên (Assets)
│  ├─ 📂 assetsGenerate/     # Trình tạo tài nguyên
│  ├─ 📂 cornerScape/        # Quản lý phân cảnh (Storyboard)
│  ├─ 📂 general/            # API chung
│  ├─ 📂 login/              # Xác thực đăng nhập
│  ├─ 📂 migrate/            # Di chuyển dữ liệu (Migration)
│  ├─ 📂 modelSelect/        # Chọn mô hình
│  ├─ 📂 novel/              # Quản lý tiểu thuyết
│  ├─ 📂 other/              # Các tính năng khác
│  ├─ 📂 production/         # Quản lý sản xuất / dựng phim
│  ├─ 📂 project/            # Quản lý dự án
│  ├─ 📂 script/             # Tạo kịch bản
│  ├─ 📂 scriptAgent/        # Interface của Agent kịch bản
│  ├─ 📂 setting/            # Cài đặt hệ thống
│  ├─ 📂 task/               # Quản lý tác vụ (Task)
│  └─ 📂 test/               # API thử nghiệm (Test)
├─ 📂 socket/                # Giao tiếp Real-time qua WebSocket
├─ 📂 types/                 # Khai báo Type của TypeScript
├─ 📂 utils/                 # Các hàm tiện ích
├─ 📄 app.ts                 # Entry của ứng dụng
├─ 📄 core.ts                # Khởi tạo Core
├─ 📄 env.ts                 # Xử lý biến môi trường
├─ 📄 err.ts                 # Xử lý lỗi (Error handling)
├─ 📄 logger.ts              # Module ghi log (Logger)
├─ 📄 router.ts              # Đăng ký Router
└─ 📄 utils.ts               # Công cụ chung
📄 Dockerfile                # Tệp cấu hình Build Docker
📄 electron-builder.yml      # Cấu hình đóng gói Electron
📄 skillList.json            # Danh sách kỹ năng
📄 LICENSE                   # Giấy phép (Apache-2.0)
📄 NOTICES.txt               # Khai báo thư viện bên thứ ba
📄 package.json              # Cấu hình dự án
📄 tsconfig.json             # Cấu hình TypeScript

🔗 Các Kho lưu trữ Liên quan

Repository (Kho) Mô tả GitHub Gitee
Toonflow-app Client hoàn chỉnh (Repo này, khuyến nghị cho người dùng) GitHub Gitee
Toonflow-web Mã nguồn Frontend (Dành cho lập trình viên Frontend) GitHub Gitee

💡 Mẹo nhỏ: Nếu bạn chỉ muốn sử dụng Toonflow, hãy tải Client hoàn chỉnh từ kho này là đủ. Kho Toonflow-web chỉ dành cho các nhà phát triển cần chỉnh sửa hoặc phát triển lại giao diện (secondary development).


👨‍👩‍👧‍👦 Nhóm Discord Cộng đồng

Nhấn vào biểu tượng bên dưới để tham gia Discord:

Join our Discord

Hoặc click trực tiếp vào link: https://discord.gg/HEjKmpNpAZ


💌 Liên hệ với chúng tôi

📧 Email: ltlctools@outlook.com


📜 Giấy phép (License)

Toonflow được phát hành mã nguồn mở dưới giấy phép Apache-2.0, kèm theo Thỏa thuận thương mại bổ sung.

Chi tiết giấy phép Apache-2.0: https://www.apache.org/licenses/LICENSE-2.0

Thỏa thuận bổ sung

  • Nếu phần mềm này được phân phối dưới dạng sản phẩm cho 2 hoặc nhiều bên thứ ba độc lập sử dụng, bắt buộc phải có giấy phép thương mại bằng văn bản từ HBAI-Ltd.
  • Nếu ≤ 5 pháp nhân hợp tác vận hành để sử dụng nội bộ và không cung cấp dịch vụ ra bên ngoài, thì được coi là sử dụng nội bộ và không cần cấp phép.
  • Không được phép xóa hoặc sửa đổi logo hoặc thông tin bản quyền trong Toonflow.

Các trường hợp Miễn phí Vĩnh viễn

  • ✅ Dùng Toonflow để sản xuất nội dung và nhận chia sẻ doanh thu từ các nền tảng video
  • ✅ Chỉnh sửa mã nguồn (Secondary development) để dùng cho nhóm nội bộ
  • ✅ ≤ 5 pháp nhân hợp tác vận hành để sử dụng nội bộ
  • ✅ Phục vụ học tập cá nhân, nghiên cứu và các mục đích phi thương mại

Bảng giá Cấp phép Thương mại

Giai đoạn Doanh thu Hàng năm Phí Hàng năm
🌱 Ươm mầm < ¥100k (RMB) Miễn phí
🚀 Khởi nghiệp ¥100k – 500k (RMB) ¥5,000 / Năm
📈 Tăng trưởng ¥500k – 1.5M (RMB) ¥20,000 / Năm
🏢 Quy mô ¥1.5M – 5M (RMB) ¥80,000 / Năm
🌐 Doanh nghiệp > ¥5M (RMB) Thương lượng

Điều khoản Không hồi tố: Những người dùng đã sử dụng Toonflow dưới giấy phép AGPL-3.0 trước khi phát hành phiên bản v1.0.8 sẽ tiếp tục tuân theo AGPL-3.0 và không bị ràng buộc bởi sự thay đổi thỏa thuận này.

Xem toàn bộ thỏa thuận tại tệp LICENSE.


⭐️ Lịch sử Thả sao (Star History)

Star History Chart


🙏 Lời Cảm ơn

Xin cảm ơn các dự án mã nguồn mở sau đây đã hỗ trợ đắc lực cho Toonflow:

  • Express - Web framework cho Node.js cực nhanh và tối giản
  • AI SDK - Bộ công cụ AI dành cho TypeScript
  • Better-SQLite3 - Thư viện liên kết SQLite3 hiệu suất cao
  • Sharp - Thư viện xử lý hình ảnh Node.js hiệu suất cao
  • Axios - HTTP client dựa trên Promise
  • Zod - Thư viện xác thực Schema ưu tiên TypeScript
  • Socket.IO - Công cụ giao tiếp sự kiện hai chiều thời gian thực
  • Electron - Framework phát triển ứng dụng Desktop đa nền tảng
  • Hugging Face Transformers - Thư viện suy luận Machine Learning tại Local

Xin cảm ơn các tổ chức/đơn vị/cá nhân sau đây đã hỗ trợ cho Toonflow:

Logo Tên Hình thức hỗ trợ Mô tả Website
Sophnet Logo Sophnet 💻 Tài trợ điện toán Nền tảng API suy luận mô hình một cửa, nhanh hơn, ổn định hơn và tiết kiệm hơn Website
Atlas Cloud Logo Atlas Cloud 💻 Tài trợ điện toán Nền tảng suy luận đa phương thức đầu tiên trên thế giới. Chat, hình ảnh, video, âm thanh — tất cả qua một API thống nhất. 300+ mô hình, tương thích OpenAI. Website

Vui lòng xem danh sách đầy đủ các thư viện phụ thuộc của bên thứ ba trong tệp NOTICES.txt.

Copyright © Huaibei AIA Network Technology Co., Ltd.