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 @@ Logo # 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', ], }, {