diff --git a/.github/workflows/build_and_deploy_docusaurus.yml b/.github/workflows/build_and_deploy_docusaurus.yml
deleted file mode 100644
index 173f4449f..000000000
--- a/.github/workflows/build_and_deploy_docusaurus.yml
+++ /dev/null
@@ -1,83 +0,0 @@
-name: Build and deploy docusaurus
-
-on:
- push:
- branches:
- - main
- paths:
- - 'docs/**'
- pull_request:
- branches:
- - main
- release:
- types:
- - published
- workflow_call:
- workflow_dispatch:
-
-jobs:
- build-and-push:
- name: Build and push from ${{ github.ref_name }}/${{ github.sha }}
- runs-on: ubuntu-latest
- env:
- APP_IMAGE_NAME: ghcr.io/etalab-ia/opengatellm/docs
- IMAGE_TAG: ${{ github.event_name == 'release' && github.event.release.tag_name || 'latest' }}
- outputs:
- commit_title: ${{ steps.get_head_commit_title.outputs.title }}
- steps:
- - name: Checkout repository
- uses: actions/checkout@v4
-
- - id: get_head_commit_title
- run: echo "title=$(git log --format=%B -n 1 HEAD | head -n 1)" >> $GITHUB_OUTPUT
-
- - name: Log in to GitHub Container Registry
- uses: docker/login-action@v3
- with:
- registry: ghcr.io
- username: ${{ github.actor }}
- password: ${{ secrets.GITHUB_TOKEN }}
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3
-
- - name: Build and push docusaurus
- uses: docker/build-push-action@v6
- with:
- context: ./docs/
- file: ./docs/Dockerfile
- platforms: linux/amd64
- push: true
- tags: ${{ env.APP_IMAGE_NAME }}:${{ env.IMAGE_TAG }}
- target: serve
- cache-from: type=registry,ref=${{ env.APP_IMAGE_NAME }}:cache
- cache-to: type=registry,ref=${{ env.APP_IMAGE_NAME }}:cache,mode=max
- build-args: |
- DOCUSAURUS_BASE_URL=/documentation/
- ALBERT_API_URL=https://albert.api.dev.etalab.gouv.fr
- outputs: type=registry
- provenance: false
-
- deploy-prod:
- if: github.event_name == 'push'
- name: Deploy from ${{ github.ref_name }}/${{ github.sha }}
- runs-on: ubuntu-latest
- needs: build-and-push
- steps:
- - name: Trigger dev deployment
- run: |
- RESPONSE="$(curl --request POST \
- --form token=${{ secrets.GITLAB_CI_TOKEN }} \
- --form ref=main \
- --form 'variables[pipeline_name]=${{ github.event.repository.name }} - ${{ needs.build-and-push.outputs.commit_title }}' \
- --form 'variables[docker_image_tag]=latest' \
- --form 'variables[application_to_deploy]=albert-api-docusaurus' \
- --form 'variables[deployment_environment]=prod' \
- 'https://gitlab.com/api/v4/projects/58117805/trigger/pipeline')"
-
- if echo "$RESPONSE" | grep -q '"status":"created"'; then
- echo $RESPONSE
- else
- echo $RESPONSE
- exit 1
- fi
\ No newline at end of file
diff --git a/.github/workflows/deploy_documentation.yml b/.github/workflows/deploy_documentation.yml
new file mode 100644
index 000000000..1d232a99a
--- /dev/null
+++ b/.github/workflows/deploy_documentation.yml
@@ -0,0 +1,38 @@
+name: Deploy Docusaurus to GitHub Pages
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+ branches: [ main ]
+ workflow_call: # Add this to make the workflow reusable
+ workflow_dispatch: # Add this to allow manual triggering
+
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: 20
+ cache: npm
+ cache-dependency-path: ./docs/package-lock.json
+ - name: Install dependencies
+ working-directory: ./docs
+ run: npm ci
+ - name: Build Docusaurus site
+ working-directory: ./docs
+ run: npm run build
+ - name: Deploy to GitHub Pages
+ uses: peaceiris/actions-gh-pages@v3
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./docs/build
+ publish_branch: gh-pages
+ user_name: 'github-actions[bot]'
+ user_email: 'github-actions[bot]@users.noreply.github.com'
\ No newline at end of file
diff --git a/README.md b/README.md
index f54180926..3f86b1dd0 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
# OpenGateLLM
-[**API Reference**](https://albert.api.etalab.gouv.fr/documentation)
+[Documentation](https://docs.opengatellm.etalab.gouv.fr) | [API Reference](https://albert.api.etalab.gouv.fr/documentation)
> [!WARNING]
> **The API is still under beta version, major breaking changes may occur.**
@@ -14,7 +14,7 @@
Production-ready API gateway for self-hosted LLMs developed by the French Government, fully open-source forever.
| Feature | Description |
-|---------|-------------|
+|---|---|
| Gateway | • OpenAI compatible API
• Self-hosted models backend support: vLLM, HuggingFace TEI, Ollama
• Commercial backend support: OpenAI
• Full stack genAI API: chat, embeddings, transcription, RAG and OCR |
| Account services | • SSO support
• Organization, project, key management
• Budget, usage and carbon footprint monitoring |
| Monitoring | • Usage and carbon footprint monitoring |
@@ -24,7 +24,7 @@ Production-ready API gateway for self-hosted LLMs developed by the French Govern
***
| Feature | OpenGateLLM | LiteLLM | OpenRouter |
-| -------------------- | ------------ | --------- | ---------- |
+| ---| ---| --- | --- |
| OpenAI Compatibility | ✅ | ✅ | ✅ |
| Open Source | ✅ | ✅ | ❌ |
| Free (all features) | ✅ | ❌ | ❌ |
diff --git a/docs/docs/contributing/development-environment.md b/docs/docs/contributing/development-environment.md
index deba00bc5..bb8b4f019 100644
--- a/docs/docs/contributing/development-environment.md
+++ b/docs/docs/contributing/development-environment.md
@@ -37,7 +37,7 @@ It is recommended to use a Python [virtualenv](https://docs.python.org/3/library
# POSTGRES_HOST=postgres
```
-4. Check the [configuration documentation](./docs/configuration.md) to configure your configuration file.
+4. Check the [configuration documentation](../getting-started/configuration.md) to configure your configuration file.
## Launch services
diff --git a/docs/docs/functionalities/rag.md b/docs/docs/functionalities/rag.md
index 482977f2d..8c7aaa69a 100644
--- a/docs/docs/functionalities/rag.md
+++ b/docs/docs/functionalities/rag.md
@@ -166,6 +166,4 @@ settings:
vector_store_model: embeddings-small
```
-6. Run OpenGateLLM as described in:
-- [running OpenGateLLM inside docker](contributing/inside-docker.mdx)
-- [running OpenGateLLM outside docker](contributing/outside-docker.mdx)
\ No newline at end of file
+6. Run OpenGateLLM as described in [quickstart](../getting-started/quickstart.md
\ No newline at end of file
diff --git a/docs/docusaurus.config.ts b/docs/docusaurus.config.ts
index 0506fa56e..4085301df 100644
--- a/docs/docusaurus.config.ts
+++ b/docs/docusaurus.config.ts
@@ -20,10 +20,10 @@ const config: Config = {
},
// Set the production url of your site here
- url: albert_api_url,
+ url: 'https://docs.opengatellm.etalab.gouv.fr',
// Set the // pathname under which your site is served
// For GitHub pages deployment, it is often '//'
- baseUrl: baseUrl,
+ baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
diff --git a/docs/sidebars.ts b/docs/sidebars.ts
index 8598b8d54..ca2fc4cd5 100644
--- a/docs/sidebars.ts
+++ b/docs/sidebars.ts
@@ -26,8 +26,8 @@ const sidebars: SidebarsConfig = {
label: 'Getting Started',
items: [
'getting-started/quickstart',
- 'getting-started/environment_variables',
'getting-started/configuration',
+ 'getting-started/environment_variables',
],
},
{