LandPPT:把大綱、配圖與講稿串成一條流程的開源簡報產生器
一个基于LLM的演示文稿生成平台,能够自动将文档内容转换为专业的PPT演示文稿。平台支持多种AI模型,提供丰富的模板和样式选择,让用户能够创建高质量的演示文稿。
秒懂
- 它是什麼?
- LandPPT 以 Python 與 FastAPI 實作,把主題或文件轉成可編輯的 HTML 簡報,再匯出多種格式。它的價值在於流程整合與多供應商路由,代價是完整能力被多個外部服務與一組商業授權綁住。
- 適合誰用?
- LandPPT 適合願意維護一整套 Web 服務、且需要講稿與影片輸出的團隊;只想要版本控管 Markdown 簡報的人應該選 Marp 或 Quarto,因為 LandPPT 的產物是 HTML 與資料庫狀態,不是純文字檔。部署前先確認三件事:APRYSE_LICENSE_KEY 是否具備,否則匯出的 PPTX 是圖片型而頁內元素不可再編輯;生產環境是否已改掉 SECRET_KEY 與預設 admin/admin123;以及是否真的需要 PostgreSQL、Valkey 與 MinIO 這三個額外服務。
- 可以商用嗎?
- 請先確認。這個儲存庫使用的授權不在我們自動分類的範圍內,商用前請閱讀儲存庫中的 LICENSE 檔案。
- 還在維護嗎?
- 有在維護。儲存庫最近一次提交在 2 天前。
- 用什麼語言寫的?
- 主要是 Python(依據 GitHub 的語言統計)。
以上回答依據專案的 GitHub 資料(最近同步於 2026年9月15日)與我們的分析,不構成法律意見。
開源專案深度解析
LandPPT 想解決的是簡報製作流程的斷裂,不是排版本身
多數人做簡報的痛點不在於不會排版,而在於同一份內容要在好幾個工具之間搬來搬去:文件摘要丟進一個工具、配圖找另一個網站、講稿另外寫、最後再手動排進 PowerPoint。LandPPT 的定位就是把這條鏈路收進同一個 Web 服務。README 把它描述為「寫大綱 → 做版式 → 配圖 → 寫講稿 → 導出」的整合流程,輸入端接受主題描述,或 PDF、Word、Markdown、TXT、Excel、PowerPoint 等文件。
目標使用者是需要在短時間內產出大量簡報、且願意自己架服務的人。專案提供 Docker 單容器與 Compose 兩種部署路徑,也提供 OpenAI 相容 API 與 REST API,README 明確寫出支援 API Key 鑑權,這代表它被設計成可被其他系統呼叫,而不只是給人操作的介面。反過來說,如果你的產出量很小,或你只需要一份靜態投影片,這套系統的安裝與維運成本並不划算。
四階段工作流與 HTML 簡報是整個架構的主軸
README 把工作流拆成四階段:需求確認、大綱、任務追蹤、PPT 生成,並支援階段重跑與恢復。這個設計的意義在於生成不是單次呼叫,而是一個有狀態的流程,中途失敗可以從某個階段接續,不必整份重來。
簡報本體以 HTML 產出,這是理解整個專案的關鍵。HTML 讓版式可以用模板與 AI 自適應布局控制,也讓瀏覽器端能直接做側邊欄 AI 對話編輯與換圖。代價出現在匯出階段:要輸出標準可編輯的 PPTX,必須具備 APRYSE_LICENSE_KEY,README 把這一項列為商業許可。沒有這把金鑰時,系統輸出的是圖片型 PPTX,README 的說法是保真高但頁內元素通常不可再編輯。換句話說,HTML 是原生格式,PPTX 是轉檔結果,而兩種轉檔路徑的可編輯性差距很大。
多供應商路由是另一個實際的機制。README 列出 OpenAI、Anthropic、Google Gemini、Azure OpenAI,以及相容 OpenAI 協議的 DeepSeek、Moonshot、Qwen,另外支援 Ollama 本地模型。它允許按角色路由模型,角色包含大綱、幻燈片、編輯、模板、講稿。這個切分讓成本控制有落點:大綱與講稿可以用便宜模型,需要視覺判斷的環節再換較貴的模型。
部署路徑從單機 SQLite 到五個服務的 Compose
本地試用最短路徑是 uv。README 給的指令是 git clone 之後執行 uv sync --extra dev,複製 .env.example 為 .env 並至少填入一個 AI API Key,最後 uv run python run.py,預設監聽 8000 埠,使用 SQLite 加記憶體快取。pip 路徑同樣存在,建立虛擬環境後 pip install -e . 再 python run.py。
Docker 單容器版本把 .env 與數個資料目錄掛載進容器,資料卷分別對應 /app/data、/app/uploads、/app/research_reports、/app/temp 與 /app/lib。生產導向的 docker compose up -d 會啟動 landppt Web、worker、PostgreSQL、Valkey 與 MinIO,其中 minio-init 負責自動建立 bucket。
設定檔的關鍵鍵值在 README 中都有出現:DATABASE_URL 未設定時走 SQLite,設定後切換到 PostgreSQL;LANDPPT_AUTO_MIGRATE_ON_STARTUP=false 可關閉啟動時自動遷移,多節點共用同一資料庫時建議改為單獨執行一次遷移作業;LANDPPT_PORT 調整對外埠;LANDPPT_IMAGE 覆蓋映像檔;ENABLE_IMAGE_SERVICE 控制圖像服務,預設關閉。安全相關的有 SECRET_KEY、LANDPPT_API_KEY 與 LANDPPT_API_KEYS、LANDPPT_BOOTSTRAP_ADMIN_ENABLED。開發用的 docker-compose-dev.yaml 會掛載原始碼並熱重載,且預設初始化 admin / admin123。
能力邊界寫得很清楚,但每一條邊界都要一把金鑰
README 有一張依賴表,把最小可跑與完整能力分開。基礎生成只需要至少一個 AI Provider Key,這是唯一的硬需求。其餘全部是可選:深度研究需要 TAVILY_API_KEY 或自架 SearXNG;網路與 AI 配圖需要對應圖庫或生圖服務的金鑰,並把 ENABLE_IMAGE_SERVICE 設為 true;講解影片需要 ffmpeg,ComfyUI TTS 為選配。
這種設計的實際後果是功能可用性會隨金鑰狀態劇烈變動。你在介面上看得到深度研究與智慧配圖,但沒有對應金鑰時它們不會運作,而 README 也提醒「避免跑通後才發現缺 Key」。對評估者來說,這代表試用時應該先決定要驗證哪一條路徑,而不是把所有開關打開。
最需要提前確認的是 PPTX 匯出。標準可編輯 PPTX 需要商業授權,這不是安裝問題而是採購問題。若團隊的交付格式硬性要求同事能在 PowerPoint 裡逐頁修改,這筆授權成本必須算進採用評估,否則實際拿到的會是圖片型簡報。
當產物必須進版本控制時,LandPPT 是錯的工具
LandPPT 的產物是 HTML 加資料庫狀態,簡報存在服務裡而不是檔案系統裡。這對需要協作編輯的團隊是優點,對需要把簡報當程式碼管理的人則是障礙:diff 看不到有意義的變更,code review 無從進行,CI 也很難驗證。
Marp 與 Quarto 走的是完全相反的路。Marp 以 Markdown 為單一來源,透過 front matter 與 CSS 控制主題,輸出由命令列工具完成;Quarto 以 .qmd 文件為來源,可同時產出簡報、報告與網站。兩者的共同點是產物由純文字檔決定,可以進 Git、可以在 CI 裡重建、不需要跑一個常駐服務,也不需要任何 AI 金鑰。代價是配圖、講稿與語音旁白要自己接。
所以選擇的判斷點不是哪個生成品質好,而是簡報是不是需要被當成程式碼對待。若你的簡報每季改版、需要多人審閱差異,Markdown 路線的總成本更低;若你的簡報是一次性產出、重點在講稿與影片,LandPPT 的整合才有意義。
維護成本集中在外部服務與授權,不在 Python 程式碼
這個倉庫的主要語言是 Python,README 標示需要 Python 3.11+ 與 FastAPI 0.104+。近期釋出節奏可從版本紀錄看出:v0.3.0 在 2026 年 4 月,v0.3.1 在 5 月,v0.3.2 在 7 月,最後一次推送時間是 2026 年 9 月。三個月左右的間隔對一個仍在 0.x 的專案來說屬於正常範圍,但也意味著 API 與設定鍵仍可能變動。
升級時真正要盯的是三處。第一是資料庫遷移,啟動時自動遷移很方便,但多節點共用資料庫時 README 建議關閉它並單獨跑一次,升級流程要跟著調整。第二是外部服務的相容性,MinIO、Valkey 與 PostgreSQL 由 Compose 編排,映像檔版本變動會直接影響部署。第三是模型供應商,按角色路由模型代表設定檔裡有多組端點與金鑰,供應商改名或調整 API 時要逐項確認。
授權方面需要特別說明:倉庫的 License 欄位顯示 NOASSERTION,但 README 的徽章標示 Apache 2.0,兩者並不一致。這不代表有任何問題,只代表採用前應該直接打開倉庫根目錄的 LICENSE 檔案確認條款,並留意 APRYSE_LICENSE_KEY 是獨立於專案授權之外的商業授權。本文不構成法律意見,商業使用前請自行核對。
採用前該驗證的四件事
第一,先確認 PPTX 匯出是否符合需求。用一份含表格與圖表的測試簡報走完流程,在沒有 APRYSE_LICENSE_KEY 的情況下打開匯出檔,確認頁內元素是否真的不可編輯。這一項決定整個專案對你的價值。
第二,確認模型路由的實際效果。README 說可按大綱、幻燈片、編輯、模板、講稿五種角色分別指定模型,試用時就應該拆開設定,觀察不同環節的輸出品質與延遲,而不是全部指向同一個模型。
第三,確認部署形態。單機 SQLite 加記憶體快取足以驗證功能,但背景任務包含 PDF、PPTX 與講解影片,這些是非同步執行的。若你的使用情境會同時產生多份簡報,worker 與佇列就是必需品,這時 Compose 的五個服務不再是選項。
第四,確認安全設定。生產環境必須更換 SECRET_KEY 與管理員密碼,README 明確指出不要沿用 admin / admin123,並且生產編排預設關閉管理員自動初始化,首次部署才需要顯式打開 LANDPPT_BOOTSTRAP_ADMIN_ENABLED。REST API 的 LANDPPT_API_KEY 與 LANDPPT_API_KEYS 也應該換成強隨機值,因為這個介面可以直接觸發簡報生成。
編輯結論
LandPPT 適合願意維護一整套 Web 服務、且需要講稿與影片輸出的團隊;只想要版本控管 Markdown 簡報的人應該選 Marp 或 Quarto,因為 LandPPT 的產物是 HTML 與資料庫狀態,不是純文字檔。部署前先確認三件事:APRYSE_LICENSE_KEY 是否具備,否則匯出的 PPTX 是圖片型而頁內元素不可再編輯;生產環境是否已改掉 SECRET_KEY 與預設 admin/admin123;以及是否真的需要 PostgreSQL、Valkey 與 MinIO 這三個額外服務。授權欄位是 NOASSERTION,README 的徽章標示 Apache 2.0,兩者不一致,採用前應直接檢視倉庫根目錄的 LICENSE 檔案。
社群筆記