Retour au classement

Amm1rr/WebAI-to-API

Python

Webchat to API

aiapifastapifreegoogle-bard-apipythonwebserverwebservicechatbotbardgeminigemini-api
Croissance des étoiles
Étoiles
1.3k
Forks
229
Croissance hebdomadaire
Issues
15
5001k
août 2023juil. 2024juil. 2025juil. 2026
ArtefactsPyPIpip install webai-to-api
README

WebAI-to-API

WebAI-to-API Server Dashboard Atlas Cloud

WebAI-to-API is a browser-native AI runtime that exposes browser-based AI services through OpenAI-compatible APIs.

WebAI-to-API combines browser-native automation with WebAPI-based provider integrations to expose AI services through a flexible OpenAI-compatible API layer.


Features

  • OpenAI-compatible /v1/chat/completions API
  • Provider-based architecture with unified routing
  • Streaming response support (SSE)
  • Conversation continuation support
  • Health, readiness, and runtime diagnostics endpoints
  • Docker deployment support
  • Authentication management and browser login workflows

Available Providers

Gemini

Provides access to Google Gemini models through either the WebAPI backend or a browser-native Playwright runtime.

Atlas Cloud

Provides access to cloud-hosted AI models through a native API integration powered by Atlas Cloud.


Quick Start

1. Install Dependencies

poetry install
poetry run playwright install chromium

2. Configuration

cp config.conf.example config.conf

For detailed settings (including logging verbosity and access log configurations), see Configuration Guide.

3. Authenticate

python verify_login.py

4. Start the Server

poetry run python src/run.py

[!TIP] New users can run make setup and make doctor for automated setup and diagnostics. See Convenience Shortcuts below.


Optional: Convenience Shortcuts

WebAI-to-API includes a bootstrap utility and a Makefile for common setup tasks.

Command Description
make setup One-step install, directory creation, and config setup.
make doctor Run environment and dependency diagnostics.

Alternative (no Make): python scripts/bootstrap.py and python scripts/doctor.py


Authentication

Gemini requires an authenticated Google session.

Method Recommended For
Browser Login (verify_login.py) Recommended. Playwright backend, Docker, and long-term usage.
Manual Cookies Quick testing and WebAPI-only usage.
  1. Run the interactive login helper:
    python verify_login.py
    
  2. Complete the sign-in process in the browser window.
  3. This creates runtime/auth/gemini.json, used by both backends.

2. Manual Cookies

  1. Sign in to Gemini.
  2. Copy __Secure-1PSID and __Secure-1PSIDTS from your browser cookies.
  3. Paste them into the [Gemini] section of config.conf.

Send Your First Request

curl -X POST http://localhost:6969/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3-flash",
    "messages": [
      {
        "role": "user",
        "content": "Hello!"
      }
    ]
  }'

Dashboard

Open the dashboard at http://localhost:6969/ui.

The dashboard provides a visual interface for runtime status, authentication management, API discovery, and interactive testing.

Available Endpoints

Endpoint Purpose
/v1/chat/completions OpenAI-compatible chat completions
/v1/temporary/chat/completions Gemini WebAPI temporary chat
/v1/models List supported models
/v1/auth/status Check authentication status
/v1/auth/login Start authentication flow
/v1/conversations Manage Gemini WebAPI conversation snapshots
/translate Legacy translation compatibility
/ui/* Dashboard and playground

Temporary Gemini Chat

/v1/temporary/chat/completions is Gemini WebAPI-only and uses Gemini temporary requests (temporary=True). Requests are not stored in Gemini history and do not create SQLite conversation snapshots. It supports streaming, non-streaming, multimodal file inputs, and artifact outputs. See docs/api.md for details.

Legacy Translate Endpoint

The /translate endpoint is maintained for compatibility with the Translate It! browser extension.

It uses Gemini temporary requests and a shared in-memory session. See docs/api.md for additional details.

File Support

File input is supported through OpenAI-style content parts on /v1/chat/completions when routed to the Gemini WebAPI backend. The currently verified file formats are documented in docs/api.md.

[!NOTE] File parts are supported only by the Gemini WebAPI backend in the MVP. Gemini Playwright and Atlas reject file parts with a clear capability error. For Gemini WebAPI, text content parts are concatenated into one prompt and file parts are passed as attachments. Exact text/file interleaving order is not preserved. The built-in /ui/playground page uses the same contract for file attachments.


Supported Models

Available models may vary depending on the configured provider and backend.

Use the /v1/models endpoint to retrieve the current list of supported models.


Model Routing

WebAI-to-API uses model prefixes to route requests to specific backends.

Model Backend
gemini-3-flash Gemini (default configured backend)
playwright/gemini-3-flash Gemini Playwright
atlas/<model-id> Atlas Cloud via OpenAI-compatible API, with 50 validated chat models exposed in /v1/models

[!TIP] Model prefixes force backend selection and override the default Gemini backend configured in config.conf. Use playwright/... model prefixes to force the Playwright backend explicitly.


Documentation

Interactive API documentation is available through Swagger UI when the server is running.


Star History

Star History Chart


License

WebAI-to-API is licensed under the Apache License 2.0. See LICENSE for the full text.


Dépôts similaires
openclaw/openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

TypeScriptnpmOtheraiassistant
openclaw.ai
383.7k80.6k
obra/superpowers

An agentic skills framework & software development methodology that works.

ShellMIT Licenseaibrainstorming
258.9k23.1k
NousResearch/hermes-agent

The agent that grows with you

PythonPyPIMIT Licenseaiai-agent
hermes-agent.nousresearch.com
218.5k41.3k
n8n-io/n8n

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

TypeScriptnpmOtherautomationipaas
n8n.io
197.4k59.5k
Significant-Gravitas/AutoGPT

AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.

PythonPyPIOtheraiopenai
agpt.co
185.6k46.1k
f/prompts.chat

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

HTMLOtherchatgptai
prompts.chat
166.2k21.5k
AUTOMATIC1111/stable-diffusion-webui

Stable Diffusion web UI

PythonPyPIGNU Affero General Public License v3.0deep-learningdiffusion
164.3k30.4k
Snailclimb/JavaGuide

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

JavaScriptnpmApache License 2.0javainterview
javaguide.cn
157.2k46.2k
firecrawl/firecrawl

The API to search, scrape, and interact with the web at scale. 🔥

TypeScriptnpmGNU Affero General Public License v3.0aicrawler
firecrawl.dev
154.1k8.8k
langgenius/dify

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.

TypeScriptnpmOtheraigpt
dify.ai
149.7k23.6k
open-webui/open-webui

User-friendly AI Interface (Supports Ollama, OpenAI API, ...)

PythonPyPIOtherollamaollama-webui
openwebui.com
146.3k21.2k
langchain-ai/langchain

The agent engineering platform.

PythonPyPIMIT Licenseaianthropic
docs.langchain.com/langchain/
142.3k23.7k