From 7dc7116a2f0e4d0b6b5a21298cf6a3591d03e0ed Mon Sep 17 00:00:00 2001 From: Enrico Ros Date: Tue, 20 Feb 2024 01:32:05 -0800 Subject: [PATCH] Docs: cleanup and add index (README.md). --- README.md | 37 ++++++---- docs/README.md | 68 +++++++++++++++++++ docs/changelog.md | 6 +- ...fig-browse.md => config-feature-browse.md} | 0 ...g-lmstudio.md => config-local-lmstudio.md} | 0 ...onfig-ollama.md => config-local-ollama.md} | 0 ...{config-database.md => deploy-database.md} | 0 docs/deploy-docker.md | 2 +- docs/environment-variables.md | 4 +- src/apps/news/news.data.tsx | 6 +- src/modules/browse/BrowseSettings.tsx | 2 +- .../vendors/lmstudio/LMStudioSourceSetup.tsx | 4 +- .../llms/vendors/ollama/OllamaSourceSetup.tsx | 2 +- 13 files changed, 104 insertions(+), 27 deletions(-) create mode 100644 docs/README.md rename docs/{config-browse.md => config-feature-browse.md} (100%) rename docs/{config-lmstudio.md => config-local-lmstudio.md} (100%) rename docs/{config-ollama.md => config-local-ollama.md} (100%) rename docs/{config-database.md => deploy-database.md} (100%) diff --git a/README.md b/README.md index 5fdfc5de0..71df47cf1 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Or fork & run on Vercel [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fenricoros%2Fbig-AGI&env=OPENAI_API_KEY&envDescription=Backend%20API%20keys%2C%20optional%20and%20may%20be%20overridden%20by%20the%20UI.&envLink=https%3A%2F%2Fgithub.com%2Fenricoros%2Fbig-AGI%2Fblob%2Fmain%2Fdocs%2Fenvironment-variables.md&project-name=big-AGI) -## 👉 [roadmap](https://github.com/users/enricoros/projects/4/views/2) +## 👉 [roadmap](https://github.com/users/enricoros/projects/4/views/2) 👉 [documentation](docs/README.md) big-AGI is an open book; see the **[ready-to-ship and future ideas](https://github.com/users/enricoros/projects/4/views/2)** in our open roadmap @@ -27,7 +27,7 @@ https://github.com/enricoros/big-AGI/assets/32999/01732528-730e-41dc-adc7-511385 - Adjustable text size: customize density. [#399](https://github.com/enricoros/big-AGI/issues/399) - Dev2 Persona Technology Preview - Better looking chats with improved spacing, fonts, and menus -- More: new video player, [LM Studio tutorial](https://github.com/enricoros/big-AGI/blob/main/docs/config-lmstudio.md) (thanks @aj47), [MongoDB support](https://github.com/enricoros/big-AGI/blob/main/docs/config-database.md) (thanks @ranfysvalle02), and speedups +- More: new video player, [LM Studio tutorial](https://github.com/enricoros/big-AGI/blob/main/docs/config-local-lmstudio.md) (thanks @aj47), [MongoDB support](https://github.com/enricoros/big-AGI/blob/main/docs/deploy-database.md) (thanks @ranfysvalle02), and speedups
What's New in 1.12.0 · Jan 26, 2024 · AGI Hotline @@ -83,14 +83,14 @@ For full details and former releases, check out the [changelog](docs/changelog.m You can easily configure 100s of AI models in big-AGI: -| **AI models** | _supported vendors_ | -|:--------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Opensource Servers | [LocalAI](https://localai.com) (multimodal) · [Ollama](https://ollama.com/) · [Oobabooga](https://github.com/oobabooga/text-generation-webui) | -| Local Servers | [LM Studio](https://lmstudio.ai/) | -| Multimodal services | [Azure](https://azure.microsoft.com/en-us/products/ai-services/openai-service) · [Google Gemini](https://ai.google.dev/) · [OpenAI](https://platform.openai.com/docs/overview) | -| Language services | [Anthropic](https://anthropic.com) · [Mistral](https://mistral.ai/) · [OpenRouter](https://openrouter.ai/) · [Perplexity](https://www.perplexity.ai/) · [Together AI](https://www.together.ai/) | -| Image services | [Prodia](https://prodia.com/) (SDXL) | -| Speech services | [ElevenLabs](https://elevenlabs.io) (Voice synthesis / cloning) | +| **AI models** | _supported vendors_ | +|:--------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Opensource Servers | [LocalAI](https://localai.com) (multimodal) · [Ollama](https://ollama.com/) · [Oobabooga](https://github.com/oobabooga/text-generation-webui) | +| Local Servers | [LM Studio](https://lmstudio.ai/) | +| Multimodal services | [Azure](https://azure.microsoft.com/en-us/products/ai-services/openai-service) · [Google Gemini](https://ai.google.dev/) · [OpenAI](https://platform.openai.com/docs/overview) | +| Language services | [Anthropic](https://anthropic.com) · [Groq](https://wow.groq.com/) · [Mistral](https://mistral.ai/) · [OpenRouter](https://openrouter.ai/) · [Perplexity](https://www.perplexity.ai/) · [Together AI](https://www.together.ai/) | +| Image services | [Prodia](https://prodia.com/) (SDXL) | +| Speech services | [ElevenLabs](https://elevenlabs.io) (Voice synthesis / cloning) | Add extra functionality with these integrations: @@ -141,11 +141,14 @@ Add extra functionality with these integrations: # 🧩 Develop -![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=&logo=typescript&logoColor=white) -![React](https://img.shields.io/badge/React-61DAFB?style=&logo=react&logoColor=black) -![Next.js](https://img.shields.io/badge/Next.js-000000?style=&logo=vercel&logoColor=white) +[//]: # (![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=&logo=typescript&logoColor=white)) -Clone this repo, install the dependencies (all locally), and run the development server (which auto-watches the +[//]: # (![React](https://img.shields.io/badge/React-61DAFB?style=&logo=react&logoColor=black)) + +[//]: # (![Next.js](https://img.shields.io/badge/Next.js-000000?style=&logo=vercel&logoColor=white)) + +To download and run this Typescript/React/Next.js project locally, the only prerequisite is Node.js with the `npm` package manager. +Clone this repo, install the dependencies (all local), and run the development server (which auto-watches the files for changes): ```bash @@ -153,6 +156,12 @@ git clone https://github.com/enricoros/big-agi.git cd big-agi npm install npm run dev + +# You will see something like: +# +# ▲ Next.js 14.1.0 +# - Local: http://localhost:3000 +# ✓ Ready in 2.6s ``` The development app will be running on `http://localhost:3000`. Development builds have the advantage of not requiring diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..eb64fda6f --- /dev/null +++ b/docs/README.md @@ -0,0 +1,68 @@ +# big-AGI Documentation + +Welcome to the [official documentation for big-AGI](https://github.com/enricoros/big-AGI/blob/main/docs/README.md). +Find all the information you need to get started, configure, and effectively use big-AGI. + +[//]: # (## Quick Start) + +[//]: # (- **[Introduction](big-agi.md)**: Overview of big-AGI's features.) + +## Configuration Guides + +Detailed guides to configure your big-AGI interface and models. + +👉 The following apply to users of [big-AGI.com](https://big-agi.com), as the public instance is empty and to be configured by the user. + +- **Cloud Model Services**: + - straightforward: **Anthropic**, **Google AI**, **Groq**, **Mistral**, **OpenAI**, **Perplexity**, **TogetherAI** + - **[Azure OpenAI](config-azure-openai.md)** + - **[OpenRouter](config-openrouter.md)** + + +- **Local Model Servers**: + - **[LocalAI](config-local-localai.md)** + - **[LM Studio](config-local-lmstudio.md)** + - **[Ollama](config-local-ollama.md)** + - **[Oobabooga](config-local-oobabooga.md)** + + +- **Advanced Feature Configuration**: + - **[Browse](config-feature-browse.md)**: Enable web page download through third-party services or your own cloud (advanced) + - **ElevenLabs API**: Voice and cutom voice generation, only requires their API key + - **Google Search API**: guide not yet available, see the Google options in [environment-variables.md](environment-variables.md) in the meantime + - **Prodia API**: Stable Diffusion XL image generation, only requires their API key, alternative to DALL·E + +## Deployment + +System integrators, administrators, whitelabelers: instead of using the public big-AGI instance on [get.big-agi.com](https://big-agi.com), you can deploy your own instance. + +Step-by-step deployment and system configuration instructions. + +- **Deploy Your Own** + - straightforward: **Local development**, **Vercel 1-Click** + - **[Cloudflare Deployment](deploy-cloudflare.md)** + - **[Docker Deployment](deploy-docker.md)**: Containers for Local or Cloud deployments + + +- **Deployment Server Features** + - **[Database Setup](deploy-database.md)**: Optional, only required to enable "Chat Link Sharing" + - **[Environment Variables](environment-variables.md)**: 📌 Set server-side API keys and special features in your deployments + - **[HTTP Basic Authentication](deploy-authentication.md)**: Optional, Secure your big-AGI instance with a username and password + +## Customization & Derivative UIs + +👏 Customize big-AGI to fit your needs. + +- **[Customizing big-AGI](customizations.md)**: how to alter source code and server-side configuration + +
+ +## Support and Community + +Join our community or get support: + +- Visit our [GitHub repository](https://github.com/enricoros/big-AGI) for source code and issue tracking +- Check the latest updates and features on [Changelog](changelog.md) or the in-app [News](https://get.big-agi.com/news) +- Connect with us and other users on [Discord](https://discord.gg/your-invite-link) for discussions, help, and sharing your experiences with big-AGI + +Thank you for choosing big-AGI. We're excited to see what you'll build. \ No newline at end of file diff --git a/docs/changelog.md b/docs/changelog.md index e091cd087..3e89d8508 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -20,7 +20,7 @@ https://github.com/enricoros/big-AGI/assets/32999/01732528-730e-41dc-adc7-511385 - Adjustable text size: customize density. [#399](https://github.com/enricoros/big-AGI/issues/399) - Dev2 Persona Technology Preview - Better looking chats with improved spacing, fonts, and menus -- More: new video player, [LM Studio tutorial](https://github.com/enricoros/big-AGI/blob/main/docs/config-lmstudio.md) (thanks @aj47), [MongoDB support](https://github.com/enricoros/big-AGI/blob/main/docs/config-database.md) (thanks @ranfysvalle02), and speedups +- More: new video player, [LM Studio tutorial](https://github.com/enricoros/big-AGI/blob/main/docs/config-local-lmstudio.md) (thanks @aj47), [MongoDB support](https://github.com/enricoros/big-AGI/blob/main/docs/deploy-database.md) (thanks @ranfysvalle02), and speedups ## What's New in 1.12.0 · Jan 26, 2024 · AGI Hotline @@ -81,7 +81,7 @@ https://github.com/enricoros/big-AGI/assets/1590910/a6b8e172-0726-4b03-a5e5-10cf - **Attachments System Overhaul**: Drag, paste, link, snap, text, images, PDFs and more. [#251](https://github.com/enricoros/big-agi/issues/251) - **Desktop Webcam Capture**: Image capture now available as Labs feature. [#253](https://github.com/enricoros/big-agi/issues/253) -- **Independent Browsing**: Full browsing support with Browserless. [Learn More](https://github.com/enricoros/big-agi/blob/main/docs/config-browse.md) +- **Independent Browsing**: Full browsing support with Browserless. [Learn More](https://github.com/enricoros/big-agi/blob/main/docs/config-feature-browse.md) - **Overheat LLMs**: Push the creativity with higher LLM temperatures. [#256](https://github.com/enricoros/big-agi/issues/256) - **Model Options Shortcut**: Quick adjust with `Ctrl+Shift+O` - Optimized Voice Input and Performance @@ -90,7 +90,7 @@ https://github.com/enricoros/big-AGI/assets/1590910/a6b8e172-0726-4b03-a5e5-10cf ### What's New in 1.6.0 - Nov 28, 2023 · Surf's Up -- **Web Browsing**: Download web pages within chats - [browsing guide](https://github.com/enricoros/big-agi/blob/main/docs/config-browse.md) +- **Web Browsing**: Download web pages within chats - [browsing guide](https://github.com/enricoros/big-agi/blob/main/docs/config-feature-browse.md) - **Branching Discussions**: Create new conversations from any message - **Keyboard Navigation**: Swift chat navigation with new shortcuts (e.g. ctrl+alt+left/right) - **Performance Boost**: Faster rendering for a smoother experience diff --git a/docs/config-browse.md b/docs/config-feature-browse.md similarity index 100% rename from docs/config-browse.md rename to docs/config-feature-browse.md diff --git a/docs/config-lmstudio.md b/docs/config-local-lmstudio.md similarity index 100% rename from docs/config-lmstudio.md rename to docs/config-local-lmstudio.md diff --git a/docs/config-ollama.md b/docs/config-local-ollama.md similarity index 100% rename from docs/config-ollama.md rename to docs/config-local-ollama.md diff --git a/docs/config-database.md b/docs/deploy-database.md similarity index 100% rename from docs/config-database.md rename to docs/deploy-database.md diff --git a/docs/deploy-docker.md b/docs/deploy-docker.md index 0c63b86ec..2ca0d862f 100644 --- a/docs/deploy-docker.md +++ b/docs/deploy-docker.md @@ -50,7 +50,7 @@ docker-compose up -d ### Make Local Services Visible to Docker 🌐 To make local services running on your host machine accessible to a Docker container, such as a -[Browseless](./config-browse.md) service or a local API, you can follow this simplified guide: +[Browseless](./config-feature-browse.md) service or a local API, you can follow this simplified guide: | Operating System | Steps to Make Local Services Visible to Docker | |:------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| diff --git a/docs/environment-variables.md b/docs/environment-variables.md index 8916c0e70..d83bbeb34 100644 --- a/docs/environment-variables.md +++ b/docs/environment-variables.md @@ -61,7 +61,7 @@ HTTP_BASIC_AUTH_PASSWORD= ### Database -For Database configuration see [config-database.md](config-database.md). +For Database configuration see [deploy-database.md](deploy-database.md). To enable features such as Chat Link Sharing, you need to connect the backend to a database. We currently support Postgres and MongoDB. @@ -81,7 +81,7 @@ requiring the user to enter an API key | `ANTHROPIC_API_HOST` | Changes the backend host for the Anthropic vendor, to enable platforms such as [config-aws-bedrock.md](config-aws-bedrock.md) | Optional | | `GEMINI_API_KEY` | The API key for Google AI's Gemini | Optional | | `MISTRAL_API_KEY` | The API key for Mistral | Optional | -| `OLLAMA_API_HOST` | Changes the backend host for the Ollama vendor. See [config-ollama.md](config-ollama.md) | | +| `OLLAMA_API_HOST` | Changes the backend host for the Ollama vendor. See [config-local-ollama.md](config-local-ollama) | | | `OPENROUTER_API_KEY` | The API key for OpenRouter | Optional | | `PERPLEXITY_API_KEY` | The API key for Perplexity | Optional | | `TOGETHERAI_API_KEY` | The API key for Together AI | Optional | diff --git a/src/apps/news/news.data.tsx b/src/apps/news/news.data.tsx index c8c423106..1045f8b9b 100644 --- a/src/apps/news/news.data.tsx +++ b/src/apps/news/news.data.tsx @@ -210,7 +210,7 @@ export const NewsItems: NewsItem[] = [ items: [ { text: <>New attachments system: drag, paste, link, snap, images, text, pdfs }, { text: <>Desktop webcam access for direct image capture (Labs option) }, - { text: <>Independent browsing with Browserless support }, + { text: <>Independent browsing with Browserless support }, { text: <>Overheat LLMs with higher temperature limits }, { text: <>Enhanced security via password protection }, { text: <>{platformAwareKeystrokes('Ctrl+Shift+O')}: quick access to model options }, @@ -223,7 +223,7 @@ export const NewsItems: NewsItem[] = [ versionName: 'Surf\'s Up', versionDate: new Date('2023-11-28T21:00:00Z'), items: [ - { text: <>Web Browsing support, see the browsing user guide }, + { text: <>Web Browsing support, see the browsing user guide }, { text: <>Branching Discussions at any message }, { text: <>Keyboard Navigation: use {platformAwareKeystrokes('Ctrl+Shift+Left/Right')} to navigate chats }, { text: <>UI fixes (thanks to the first sponsor) }, @@ -240,7 +240,7 @@ export const NewsItems: NewsItem[] = [ items: [ { text: <>Continued Voice for hands-free interaction }, { text: <>Visualization Tool for data representations }, - { text: <>Ollama (guide) local models support }, + { text: <>Ollama (guide) local models support }, { text: <>Text Tools including highlight differences }, { text: <>Mermaid Diagramming Rendering }, { text: <>OpenAI 1106 Chat Models }, diff --git a/src/modules/browse/BrowseSettings.tsx b/src/modules/browse/BrowseSettings.tsx index 0b68c369b..7519a45ac 100644 --- a/src/modules/browse/BrowseSettings.tsx +++ b/src/modules/browse/BrowseSettings.tsx @@ -26,7 +26,7 @@ export function BrowseSettings() { Configure a browsing service to enable loading links and pages. See the + href='https://github.com/enricoros/big-agi/blob/main/docs/config-feature-browse.md' target='_blank' noLinkStyle> browse configuration guide for more information. diff --git a/src/modules/llms/vendors/lmstudio/LMStudioSourceSetup.tsx b/src/modules/llms/vendors/lmstudio/LMStudioSourceSetup.tsx index 9c3e7d3e2..2356947a5 100644 --- a/src/modules/llms/vendors/lmstudio/LMStudioSourceSetup.tsx +++ b/src/modules/llms/vendors/lmstudio/LMStudioSourceSetup.tsx @@ -50,14 +50,14 @@ export function LMStudioSourceSetup(props: { sourceId: DModelSourceId }) { You can use a running LM Studio instance as a source for local models. Please refer to our configuration guide for + level='body-sm' href='https://github.com/enricoros/big-agi/blob/main/docs/config-local-lmstudio.md' target='_blank'>configuration guide for how to link to your LM Studio instance. Learn more} + rightLabel={Learn more} placeholder='e.g., http://127.0.0.1:1234' value={oaiHost} onChange={value => updateSetup({ oaiHost: value })} /> diff --git a/src/modules/llms/vendors/ollama/OllamaSourceSetup.tsx b/src/modules/llms/vendors/ollama/OllamaSourceSetup.tsx index 52b758617..aba3f95d8 100644 --- a/src/modules/llms/vendors/ollama/OllamaSourceSetup.tsx +++ b/src/modules/llms/vendors/ollama/OllamaSourceSetup.tsx @@ -40,7 +40,7 @@ export function OllamaSourceSetup(props: { sourceId: DModelSourceId }) { information} + description={information} placeholder='http://127.0.0.1:11434' isError={hostError} value={ollamaHost || ''}