2Slides Logo
Chuỗi Quy Trình Từ Nghiên Cứu Đến Trình Bày: Tavily, LLM, Slides API (2026)
2Slides Team
18 min read

Quy trình từ Nghiên cứu đến Trình bày: Tavily, LLM, Slides API (2026)

Một quy trình từ nghiên cứu đến trình bày nhận vào một chủ đề và trả về một bộ slide có nguồn tham khảo. Một API tìm kiếm (Tavily hoặc Exa) thu thập 10 đến 20 nguồn, một LLM viết bản tóm tắt 12 slide với các trích dẫn đánh số, và API 2Slides biến bản tóm tắt thành bộ slide: POST /api/v1/slides/generate để có file PPTX có thể chỉnh sửa với 10 credits mỗi trang (120 credits, khoảng $0.30, cho 12 slide), hoặc create-pdf-slides cho slide thiết kế hình ảnh với 10 + 100 credits mỗi trang. Phù hợp với các nhóm tư vấn, nhà phân tích và vận hành nghiên cứu thường xuyên gửi cùng một bộ slide hàng tuần.

Điểm chính cần nhớ

  • Một bộ Fast PPT 12 slide tốn 120 credits, khoảng $0.30 theo gói $5; phiên bản thiết kế hình ảnh tốn 1,210 credits, khoảng $3.03.
  • Quy trình gồm bốn lần gọi: một lần gọi API tìm kiếm, một lần gọi LLM, GET /api/v1/themes/search, rồi POST /api/v1/slides/generate.
  • Mỗi phản hồi 2Slides được đóng gói dưới dạng { success, data: { jobId, status, downloadUrl } }, nên một bộ phân tích có thể xử lý cả gửi và kiểm tra trạng thái.
  • Giới hạn tốc độ là 6 yêu cầu mỗi phút cho mỗi khóa, và bộ Fast PPT trả về trong khoảng 30 giây ở chế độ đồng bộ.
  • Trích dẫn chỉ tồn tại nếu prompt LLM bắt buộc danh sách nguồn đánh số và cấm số liệu bịa đặt; trình tạo slide định dạng nội dung, không kiểm tra tính xác thực.

Dành cho ai

Bạn điều hành một công ty tư vấn, một bộ phận nghiên cứu hoặc một hoạt động nội dung, và ai đó yêu cầu "một bộ slide nhanh về thị trường tái chế pin châu Âu" mỗi vài ngày. Việc nghiên cứu mất một giờ, làm slide mất thêm hai giờ, và đó là 12 slide giống nhau mỗi lần: tóm tắt, quy mô thị trường, các đối thủ, xu hướng, rủi ro, khuyến nghị, nguồn tham khảo. Nếu bạn đã có một instance n8n hoặc trình lập lịch Python, công thức này không cần hạ tầng mới.

Không dùng công thức này cho sản phẩm cuối cùng gửi khách hàng cần phân tích riêng biệt. Nó tạo bản thảo có nguồn tham khảo trong vài phút; con người vẫn đọc nguồn và quyết định nội dung.

Quy trình tổng quan

BướcCông cụViệc xảy raEndpoint 2Slides / credits
1. Kích hoạtLịch trình n8n hoặc Form, cron, hoặc tham số CLIMột chuỗi chủ đề vào pipelinekhông có
2. Tìm kiếmTavily /search hoặc Exa /search10 đến 20 URL kèm tiêu đề và đoạn tríchkhông có
3. Tóm tắtOpenAI hoặc ClaudeBản phác thảo 12 slide, mỗi số liệu có tag [n], kèm danh sách nguồnkhông có
4. Chủ đềGET /api/v1/themes/search?query=consultingTrả về các giá trị themeId ứng viênmiễn phí, 6 req/phút
5. Bộ slidePOST /api/v1/slides/generate (hoặc create-pdf-slides)Bản tóm tắt thành PPTX (hoặc PDF + hình ảnh từng trang)10 credits/trang (hoặc 10 + 100/trang)
6. Kiểm traGET /api/v1/jobs/{jobId} mỗi 5 đến 10 giâyChờ status: "success"miễn phí, 10 req/phút
7. GiaoTải lên Google Drive, gửi tin nhắn SlackNhóm nhận link và file nguồnkhông có

Bước 1: Thu thập 10 đến 20 nguồn với API nghiên cứu

Bộ slide chỉ tốt bằng nguồn tham khảo, nên dành công sức ở đây. Tavily trả về kết quả kèm nội dung trang trích xuất, điều LLM cần để trích dẫn thay vì nhớ lại. Exa cũng vậy với tìm kiếm ngữ nghĩa. Yêu cầu 10 đến 20 kết quả và giới hạn trong 12 tháng gần nhất nếu chủ đề nhạy cảm về thời gian.

Lưu mỗi kết quả dưới dạng { id, url, title, published, snippet } và đánh số id từ 1. Những id này trở thành dấu trích dẫn trên slide, nên giữ nguyên mảng này trong toàn bộ quá trình.

curl -s https://api.tavily.com/search \ -H "Content-Type: application/json" \ -d '{ "api_key": "'"$TAVILY_API_KEY"'", "query": "European battery recycling market size 2026", "search_depth": "advanced", "max_results": 15, "include_raw_content": false }'

Bước 2: Viết bản tóm tắt 12 slide có trích dẫn (OpenAI hoặc Claude)

Prompt làm ba việc: cố định cấu trúc slide, bắt mọi số liệu phải có id trích dẫn, và cấm số liệu không có trong nguồn. Yêu cầu văn bản thuần, không JSON, vì văn bản sẽ đưa thẳng vào userInput của gọi 2Slides.

Cấu trúc phù hợp với hầu hết bản tóm tắt tư vấn là 12 slide: 1 tiêu đề, 2 tóm tắt điều hành, 3 quy mô thị trường, 4 đến 5 đối thủ chính, 6 đến 7 xu hướng, 8 đến 9 rủi ro, 10 đến 11 khuyến nghị, 12 nguồn. Giữ 3 đến 5 gạch đầu dòng mỗi slide; mẫu Fast PPT thiết kế theo mật độ đó.

Bạn là nhà phân tích nghiên cứu. Chỉ sử dụng các nguồn đánh số bên dưới, viết bản tóm tắt 12 slide về: {topic}. Slide: 1 Tiêu đề, 2 Tóm tắt điều hành, 3 Quy mô thị trường, 4-5 Đối thủ chính, 6-7 Xu hướng, 8-9 Rủi ro, 10-11 Khuyến nghị, 12 Nguồn. Quy tắc: - Mỗi số, phần trăm hoặc ngày tháng phải kết thúc bằng id nguồn trong ngoặc, ví dụ "EUR 4.2B by 2030 [3]". - Nếu nguồn không có số liệu, viết "không tìm thấy số liệu đáng tin cậy" thay vì ước lượng. - Slide 12 liệt kê mọi id trích dẫn dưới dạng "[n] Tiêu đề, Nhà xuất bản, URL". - 3 đến 5 gạch đầu dòng mỗi slide, mỗi dòng dưới 20 từ. Bắt đầu mỗi slide bằng "Slide N: <tiêu đề>". Nguồn: {sources}

Bước 3: Chọn chủ đề phong cách tư vấn

Bộ Fast PPT xây dựng từ mẫu thiết kế, và themeId quyết định giao diện. Tìm kiếm thư viện một lần với từ khóa "consulting" hoặc "corporate", chọn một hoặc hai id, và mã hóa cứng trong pipeline. Tìm kiếm mỗi lần chạy chỉ tốn hạn mức tốc độ.

curl -s "https://2slides.com/api/v1/themes/search?query=consulting&limit=5" \ -H "Authorization: Bearer $SLIDES_API_KEY"

Phản hồi liệt kê mỗi chủ đề với themeId, tên và bản xem trước. Để duyệt trực quan, Templates Hub hiển thị hơn 1,500 mẫu tương tự.

2Slides Templates Hub for choosing a consulting-style theme
Hình 1: Templates Hub, nơi bạn chọn chủ đề tư vấn hoặc doanh nghiệp và sao chép themeId cho gọi API.

Bước 4: Tạo bộ slide với API 2Slides

Có hai cách. Để có PPTX có thể chỉnh sửa, chuyên viên tư vấn có thể chỉnh sửa trong PowerPoint, gọi generate. Mặc định là đồng bộ, nên bộ 12 slide trả về với downloadUrl trong một lần gọi khoảng 30 giây. Khi làm hàng loạt nhiều chủ đề, truyền mode: "async" và kiểm tra trạng thái.

curl -s -X POST https://2slides.com/api/v1/slides/generate \ -H "Authorization: Bearer $SLIDES_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "userInput": "Slide 1: European Battery Recycling Market 2026\n...\nSlide 12: Sources\n[1] ...", "themeId": "THEME_ID_FROM_SEARCH", "responseLanguage": "English", "mode": "async" }'

Phản hồi:

{ "success": true, "data": { "jobId": "job_9f3a...", "status": "pending" } }

Để có phiên bản thiết kế hình ảnh cao cấp (PDF kèm hình ảnh từng trang), gọi create-pdf-slides với bản tóm tắt tương tự. Đặt page: 12 cho khớp số slide, hoặc page: 0 để bộ lập kế hoạch chọn.

curl -s -X POST https://2slides.com/api/v1/slides/create-pdf-slides \ -H "Authorization: Bearer $SLIDES_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "userInput": "Slide 1: European Battery Recycling Market 2026\n...", "designStyle": "consulting deck, navy and white, dense data slides, one chart per slide", "aspectRatio": "16:9", "resolution": "2K", "page": 12, "contentDetail": "standard", "responseLanguage": "English" }'

Cả hai cách trả về cùng cấu trúc. Kiểm tra GET https://2slides.com/api/v1/jobs/{jobId} mỗi 5 đến 10 giây đến khi data.statussuccess hoặc failed, rồi tải data.downloadUrl.

Bước 5: Triển khai A, workflow n8n (Tavily n8n presentation)

n8n là cách nhanh nhất để tạo công việc trình bày Tavily n8n theo lịch mà người không phải kỹ sư có thể kích hoạt qua form. Bảy node chuẩn là đủ.

  • Schedule Trigger (hàng tuần) hoặc Form Trigger với một trường "topic".
  • HTTP Request tới Tavily /search với chủ đề, max_results: 15.
  • Node OpenAI (hoặc HTTP Request tới Claude) với prompt Bước 2; truyền nguồn đánh số trong tin nhắn.
  • Node Code lắp { userInput, themeId, responseLanguage: "English", mode: "async" } từ văn bản LLM.
  • HTTP Request tới POST https://2slides.com/api/v1/slides/generate với header Authorization: Bearer {{ $env.SLIDES_API_KEY }}. Giữ khóa trong credentials n8n, không trong body node.
  • Wait node (10 giây), rồi HTTP Request tới GET /api/v1/jobs/{{ $json.data.jobId }}IF node: success tiếp tục, pending hoặc processing quay lại Wait, failed gửi lỗi lên Slack.
  • HTTP Request (tải data.downloadUrl dưới dạng nhị phân) rồi tải lên Google Drive và gửi tin nhắn Slack với link Drive và chủ đề.

Thêm upload Google Drive thứ hai cho sources.json từ Bước 1; người kiểm duyệt muốn xem đoạn trích đầy đủ, không chỉ slide Nguồn. Các credential và nhánh lỗi được trình bày trong n8n + 2Slides: tự động hóa workflow trình bày.

Bước 6: Triển khai B, script Python đơn lẻ

Cho nhóm thích cron job, một file Python làm cùng việc. Phiên bản này dùng Tavily và OpenAI; thay Exa hoặc Claude bằng cách đổi một hàm.

import os, time, json, requests TAVILY = os.environ["TAVILY_API_KEY"] OPENAI = os.environ["OPENAI_API_KEY"] SLIDES = os.environ["SLIDES_API_KEY"] BASE = "https://2slides.com/api/v1" H = {"Authorization": f"Bearer {SLIDES}", "Content-Type": "application/json"} def search(topic, n=15): r = requests.post("https://api.tavily.com/search", json={ "api_key": TAVILY, "query": topic, "search_depth": "advanced", "max_results": n}) r.raise_for_status() return [{"id": i + 1, "url": s["url"], "title": s["title"], "snippet": s["content"]} for i, s in enumerate(r.json()["results"])] def write_brief(topic, sources): src = "\n".join(f"[{s['id']}] {s['title']} | {s['url']}\n{s['snippet']}" for s in sources) prompt = open("brief_prompt.txt").read().format(topic=topic, sources=src) r = requests.post("https://api.openai.com/v1/chat/completions", headers={"Authorization": f"Bearer {OPENAI}"}, json={"model": "gpt-4.1", "messages": [{"role": "user", "content": prompt}], "temperature": 0.2}) r.raise_for_status() return r.json()["choices"][0]["message"]["content"] def pick_theme(query="consulting"): r = requests.get(f"{BASE}/themes/search", headers=H, params={"query": query, "limit": 5}) r.raise_for_status() return r.json()["data"]["themes"][0]["themeId"] def generate_deck(brief, theme_id, language="English"): r = requests.post(f"{BASE}/slides/generate", headers=H, json={ "userInput": brief, "themeId": theme_id, "responseLanguage": language, "mode": "async"}) r.raise_for_status() body = r.json() assert body["success"], body return body["data"]["jobId"] def wait_for(job_id, every=8, timeout=600): start = time.time() while time.time() - start < timeout: d = requests.get(f"{BASE}/jobs/{job_id}", headers=H).json()["data"] if d["status"] == "success": return d["downloadUrl"] if d["status"] == "failed": raise RuntimeError(f"job {job_id} failed: {d}") time.sleep(every) raise TimeoutError(job_id) if __name__ == "__main__": topic = "European battery recycling market 2026" sources = search(topic) brief = write_brief(topic, sources) url = wait_for(generate_deck(brief, pick_theme())) slug = topic.lower().replace(" ", "-") open(f"{slug}.pptx", "wb").write(requests.get(url).content) json.dump({"topic": topic, "sources": sources, "brief": brief}, open(f"{slug}.sources.json", "w"), indent=2)

Script tạo hai file mỗi lần chạy: PPTX và .sources.json với danh sách nguồn và văn bản tóm tắt. JSON là dấu vết kiểm toán khi đối tác hỏi số liệu slide 3 lấy từ đâu. Với lô lớn, giữ số lần gửi dưới 6 mỗi phút.

Vệ sinh trích dẫn: mỗi số liệu mang nguồn của nó

Tạo slide tư vấn tự động thất bại theo cách dễ đoán: một số liệu tự tin trên slide 3 mà không nguồn nào có. Trình tạo slide chỉ định dạng nội dung nhận được, nên kiểm soát nằm ở bước LLM và kiểm tra sau đó.

  • Bắt định dạng dấu trích dẫn. Mỗi số liệu kết thúc bằng [n]. Từ chối bản tóm tắt (và chạy lại LLM) nếu regex tìm thấy số theo sau là "%", "B", "M" hoặc năm mà không có id trong ngoặc trên cùng dòng.
  • Xác thực id với mảng nguồn. [7] trong bản tóm tắt mà chỉ có 6 nguồn nghĩa là model bịa ra tham chiếu. Thất bại.
  • Giữ slide Nguồn. Slide 12 liệt kê [n] Tiêu đề, Nhà xuất bản, URL cho mọi id trích dẫn. Đây là slide người kiểm duyệt đọc đầu tiên.
  • Lưu file kèm theo. .sources.json (hoặc upload Drive trong n8n) giữ đoạn trích model đã xem, để người kiểm duyệt so sánh văn bản slide với đoạn gốc.
  • Ưu tiên "không tìm thấy số liệu đáng tin cậy". Tư vấn viên có thể điền khoảng trống trung thực; họ khó phát hiện số liệu bịa đặt.

Giải pháp thay thế: Claude Code hoặc Codex với kỹ năng 2Slides hoặc MCP

Quy trình script phù hợp với chủ đề định kỳ, lặp lại. Với nghiên cứu sâu một lần, phiên agent làm tương tự tương tác. Kết nối server MCP 2Slides được host với Claude Code bằng một lệnh, rồi yêu cầu agent nghiên cứu chủ đề với công cụ tìm kiếm web, viết bản tóm tắt có trích dẫn, gọi themes_search lấy chủ đề tư vấn, và gọi slides_generate với bản tóm tắt. MCP cung cấp 7 công cụ, gồm jobs_get để kiểm tra trạng thái, dùng chung khóa và credits với REST API.

claude mcp add --transport http 2slides "https://2slides.com/api/mcp?apikey=YOUR_KEY"

2Slides MCP Server tab with the Streamable HTTP endpoint and the claude mcp add command
Hình 2: Tab MCP Server trên trang API, với endpoint HTTP Streamable và lệnh thiết lập Claude Code một dòng.

Trong Codex, Cursor hoặc agent khác thích kỹ năng, cài Agent Skill từ trang kỹ năng thay thế; nó dạy cùng các endpoint và vòng gửi, kiểm tra, tải xuống. Xem Agent Skills vs MCP servers for presentations để biết so sánh và How to use Claude MCP to generate presentations hướng dẫn từng bước.

2Slides Agent Skills page listing Claude Code, OpenAI Codex, Cursor, Google Antigravity, Manus and Openclaw
Hình 3: Trang Agent Skills, với hướng dẫn cài đặt Claude Code, Codex, Cursor và các agent khác.

Bộ slide chuẩn tư vấn trông như thế nào

Thư viện 2Slides Gallery lưu trữ các bộ slide tham khảo như "AI at Work 2025" của BCG, mở đầu bằng luận điểm một câu và kết thúc bằng phương pháp và nguồn, cùng cấu trúc với bản tóm tắt 12 slide trên. Các bộ slide trong gallery là tài liệu thực tế lưu trên 2Slides, không phải đầu ra API. Dùng làm cảm hứng thiết kế, hoặc truyền URL hình ảnh trang làm referenceImageUrl cho create-like-this để đường dẫn thiết kế hình ảnh lấy kiểu chữ, màu sắc và bố cục từ tham chiếu.

BCG AI at Work 2025 reference deck from the 2Slides Gallery, a consulting-style structure reference
Hình 4: Slide tiêu đề của bộ slide tham khảo BCG AI at Work 2025 trong 2Slides Gallery.

BCG AI at Work 2025 reference deck from the 2Slides Gallery, a consulting-style structure reference
Hình 5: Một slide sau trong cùng bộ, thể hiện bố cục một thông điệp mỗi slide mà khán giả tư vấn mong đợi.

Để xem rộng hơn công cụ phù hợp với công việc tư vấn, xem Best AI presentation tools for consultants. Trang API Gamma mô tả công thức n8n + Tavily + OpenAI tương tự; khóa API của họ yêu cầu gói Pro, trong khi khóa 2Slides dùng được với mọi tài khoản. 2Slides là sản phẩm của chúng tôi, nên cân nhắc so sánh phù hợp.

Chi phí

Credits tính theo mức dùng: $5 mua 2,000 credits ($0.0025 mỗi credit) và $80 mua 40,000 credits ($0.002 mỗi credit). Phí API tìm kiếm và LLM do nhà cung cấp tính riêng, không bao gồm dưới đây.

Khối lượngFast PPT generate (12 slide = 120 credits)Image-designed create-pdf-slides (12 slide 2K = 1,210 credits)
20 bộ / tháng2,400 credits, khoảng $6.00 (gói $9.50 đủ dùng)24,200 credits, khoảng $48 đến $61 tùy gói
500 bộ / tháng60,000 credits, khoảng $120 (hai gói $80)605,000 credits, khoảng $1,210 theo $0.002 mỗi credit

Tài khoản mới nhận 500 credits miễn phí, đủ cho 4 bộ Fast PPT thử nghiệm.

Fast PPT hay slide thiết kế hình ảnh cho trường hợp này?

  • Fast PPT generate phù hợp khi tư vấn viên sẽ chỉnh sửa slide trong PowerPoint, khi khối lượng lớn (500 bộ/tháng tốn khoảng $120), và khi mẫu giao diện chấp nhận được. Trả về trong khoảng 30 giây.
  • create-pdf-slides phù hợp khi bộ slide gửi khách hàng dưới dạng PDF chỉ đọc và cần thiết kế một ý tưởng mỗi slide. Chi phí cao hơn khoảng 10 lần mỗi bộ.
  • create-like-this phù hợp khi công ty có phong cách riêng: truyền một hình ảnh slide thương hiệu làm referenceImageUrl và mỗi lần chạy kế thừa nó.
  • Lồng tiếng và MP4 chỉ có trên công việc thiết kế hình ảnh, qua generate-narration với 210 credits mỗi trang. Hữu ích cho video tóm tắt nghiên cứu nội bộ, không dùng cho Fast PPT.

Những lỗi thường gặp

  • Giới hạn tốc độ 6 yêu cầu mỗi phút. Xếp hàng chạy lô mỗi lần gửi cách nhau 10 đến 12 giây; kiểm tra trạng thái dùng hạn mức riêng 10 req/phút cho jobs.
  • Khóa API trong body node n8n hoặc script trình duyệt. Giữ khóa trong credentials n8n hoặc biến môi trường server, không để trong code client.
  • Cố gắng lồng tiếng cho bộ Fast PPT. generate-narration chỉ nhận công việc từ create-pdf-slides hoặc create-like-this. Công việc Fast PPT bị từ chối.
  • page: 0 nghĩa là tự động phát hiện, không phải không có trang. Với create-pdf-slides, đặt page: 12 khi bản tóm tắt đã 12 slide, hoặc page: 0 để bộ lập kế hoạch chọn.
  • Mã ngôn ngữ thay vì tên. responseLanguage nhận "Spanish" hoặc "German", không nhận "es" hoặc "de".
  • Gửi 20 bài báo đầy đủ làm userInput. Tóm tắt trước; bản tóm tắt, không phải nguồn thô, gửi cho 2Slides.

Câu hỏi thường gặp

Chi phí cho một bộ slide từ nghiên cứu đến trình bày là bao nhiêu?

Khoảng $0.30 cho phần 2Slides của bộ Fast PPT 12 slide (120 credits theo $0.0025 mỗi credit), hoặc khoảng $3.03 cho bộ 12 slide thiết kế hình ảnh 2K (1,210 credits). Thêm một lần gọi API tìm kiếm và một lần hoàn thành LLM, tính phí riêng bởi nhà cung cấp. Với 500 bộ/tháng, đường Fast PPT tốn khoảng $120 credits.

Pipeline có thể xuất slide bằng ngôn ngữ khác không?

Có. Truyền responseLanguage là tên ngôn ngữ như "Spanish" hoặc "Japanese"; hỗ trợ hơn 20 ngôn ngữ. Cách thiết lập sạch nhất là viết bản tóm tắt bằng tiếng Anh và để 2Slides dịch khi tạo, nên trích dẫn và URL nguồn giữ nguyên trên các phiên bản ngôn ngữ khác nhau của cùng bộ slide.

Tôi có cần n8n không, hay có thể chạy mà không cần công cụ workflow?

Bạn không cần n8n. Script Python ở Bước 6 làm cùng việc từ cron, và phiên agent với MCP hoặc skill 2Slides làm tương tác. n8n có giá trị khi người không kỹ sư cần kích hoạt chạy từ form và bạn muốn giao hàng qua Google Drive và Slack mà không viết tích hợp riêng.

Làm sao để ngăn LLM bịa số liệu trên slide?

Hạn chế prompt và kiểm tra đầu ra. Yêu cầu mỗi số liệu kết thúc bằng id nguồn [n], bảo model viết "không tìm thấy số liệu đáng tin cậy" thay vì ước lượng, và từ chối bản tóm tắt có id vượt số nguồn. Lưu file nguồn kèm bộ slide để người kiểm duyệt đối chiếu từng slide với đoạn gốc.

Tôi có thể khớp phong cách slide của công ty thay vì dùng mẫu không?

Có, với create-like-this. Truyền URL công khai của một slide thương hiệu hiện có làm referenceImageUrl và pipeline thiết kế hình ảnh lấy màu sắc, kiểu chữ và bố cục từ đó. Chi phí bằng create-pdf-slides: 10 credits lập kế hoạch cộng 100 credits mỗi trang ở 2K. Để có PPTX chỉnh sửa được, chọn chủ đề gần nhất từ themes/search.

Bước tiếp theo

  • Lấy khóa API tại 2slides.com/api. Tài khoản mới có 500 credits miễn phí, đủ cho 4 bộ slide thử 12 trang.
  • Xem cách các nhóm khác dùng cùng endpoint trong bài đăng hub, AI presentation API use cases by team.
  • Nếu nhóm bạn dùng Claude Code hoặc Codex, cài Agent Skill và chạy pipeline nghiên cứu đến trình bày tương tác trước khi lên lịch; n8n + 2Slides trình bày phiên bản dùng công cụ workflow.

About 2Slides

Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.

Try For Free