Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
4b30d81
Fix Firestore client initialization with explicit project ID
skywinder Mar 12, 2025
763c7bc
Pinecone vector database initialization with configuration handling
skywinder Mar 12, 2025
cbe4a95
Add project ID handling for Google Cloud Storage client initialization
skywinder Mar 12, 2025
715e091
Enhance GitHub API token handling and documentation
skywinder Mar 12, 2025
dd659bc
Improve Silero VAD model loading with error handling and fallback mec…
skywinder Mar 12, 2025
b8a5a3b
doc: Add Opus library troubleshooting
skywinder Mar 12, 2025
5cdbd46
feat: Add Typesense mock client for development and configuration han…
skywinder Mar 12, 2025
dc0ee8c
docs: Enhance Typesense configuration guide in README
skywinder Mar 12, 2025
34650a8
feat: Improve Silero VAD model download and loading mechanism
skywinder Mar 12, 2025
3ab94bd
fix: Update Silero VAD model download URL and simplify file retrieval
skywinder Mar 12, 2025
ffd5e69
feat: Add PyOgg error handling and fallback mechanism for Opus codec
skywinder Mar 12, 2025
c36bdb7
Merge branch 'main' into backend-improments
skywinder Mar 12, 2025
0710acd
Fixed App Store Icon in ReadMe
neooriginal Mar 12, 2025
e368cc6
Removing the VAD on external trigger for audio-bytes; pushing the pus…
beastoin Mar 12, 2025
8af4897
x2 connections for the external integration
beastoin Mar 12, 2025
88215d1
refactor: Restructure app list page layout and category rendering
smian1 Mar 12, 2025
1082646
feat: Improve Google Cloud credentials handling in backend
skywinder Mar 12, 2025
2d7942c
add docker compose
skywinder Mar 12, 2025
da4dbbb
chore: Update backend Docker configuration and documentation
skywinder Mar 12, 2025
3eb8df8
Update Docker configuration to use port 8000
skywinder Mar 12, 2025
77d7ad3
doc: Add GOOGLE_CLOUD_PROJECT variable to .env.template and update RE…
skywinder Mar 14, 2025
80fe051
Merge branch 'main' into backend-improments
skywinder Mar 16, 2025
1d2ac3f
gitignore
skywinder Mar 16, 2025
d22fa0f
Merge branch 'main' into backend-improments
skywinder Apr 10, 2025
7e9c238
clenap optional variables and wrap try catch to make it work without
skywinder Apr 10, 2025
6d2cc7c
update .env.template remove unused var and add mised bucket variable…
skywinder Apr 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,7 @@ backend/scripts/rag/visualizations/
*/pretrained_models/
/backend/_speech_profiles

backend/google-credentials.json
backend/google-credentials-dev.json
backend/google-credentials*.json

startup-script.sh
/app/lib/firebase_options_dev.dart
Expand Down
62 changes: 49 additions & 13 deletions backend/.env.template
Original file line number Diff line number Diff line change
@@ -1,37 +1,73 @@
HUGGINGFACE_TOKEN=
BUCKET_SPEECH_PROFILES=
BUCKET_BACKUPS=
BUCKET_PLUGINS_LOGOS=
#################################################
# REQUIRED ENVIRONMENT VARIABLES #
#################################################
# These variables are essential for core functionality

# Firebase/Google Cloud Authentication
GOOGLE_APPLICATION_CREDENTIALS=google-credentials.json
GOOGLE_CLOUD_PROJECT=

PINECONE_API_KEY=
PINECONE_INDEX_NAME=

# Database Connection
REDIS_DB_HOST=
REDIS_DB_PORT=
REDIS_DB_PASSWORD=

SONIOX_API_KEY=
# API Keys for Core Services
OPENAI_API_KEY=
DEEPGRAM_API_KEY=

ADMIN_KEY=
OPENAI_API_KEY=

GITHUB_TOKEN=
# Base API URL for client connections
BASE_API_URL=

#################################################
# OPTIONAL ENVIRONMENT VARIABLES #
#################################################
# These variables enable additional features but are not required for core functionality

# Additional API Keys
HUGGINGFACE_TOKEN=
SONIOX_API_KEY=
GITHUB_TOKEN=
WORKFLOW_API_KEY=
HUME_API_KEY=
HUME_CALLBACK_URL=

HOSTED_PUSHER_API_URL=
# Google Cloud Storage Buckets
BUCKET_SPEECH_PROFILES=
BUCKET_PLUGINS_LOGOS=
BUCKET_POSTPROCESSING=
BUCKET_MEMORIES_RECORDINGS=
BUCKET_TEMPORAL_SYNC_LOCAL=
BUCKET_APP_THUMBNAILS=
BUCKET_CHAT_FILES=

# Vector Database (for advanced retrieval)
PINECONE_API_KEY=
PINECONE_INDEX_NAME=

# Search and Indexing
TYPESENSE_HOST=
TYPESENSE_HOST_PORT=
TYPESENSE_API_KEY=

# Webhooks and Notifications
HOSTED_PUSHER_API_URL=

# Payment Processing
STRIPE_API_KEY=
STRIPE_WEBHOOK_SECRET=
STRIPE_CONNECT_WEBHOOK_SECRET=

BASE_API_URL=
# HTTP Timeouts (in seconds)
HTTP_GET_TIMEOUT=30
HTTP_PUT_TIMEOUT=30
HTTP_PATCH_TIMEOUT=30
HTTP_DELETE_TIMEOUT=30

# Developer Options
LOCAL_DEVELOPMENT=false
NO_SOCKET_TIMEOUT=false

# Admin Options
MARKETPLACE_APP_REVIEWERS=
8 changes: 4 additions & 4 deletions backend/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ FROM python:3.11 AS builder
ENV PATH="/opt/venv/bin:$PATH"
RUN python -m venv /opt/venv

COPY backend/requirements.txt /tmp/requirements.txt
COPY requirements.txt /tmp/requirements.txt
RUN pip install --no-cache-dir --upgrade -r /tmp/requirements.txt

FROM python:3.11-slim
Expand All @@ -14,7 +14,7 @@ ENV PATH="/opt/venv/bin:$PATH"
RUN apt-get update && apt-get -y install ffmpeg curl unzip && rm -rf /var/lib/apt/lists/*

COPY --from=builder /opt/venv /opt/venv
COPY backend/ .
COPY . .
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this will break the gcp deployment workflow (not really sure). @skywinder can you pls once cross check the dockerfile.datadog file and also the gcp_backend.yml file in .github/workflows (if you haven't already)

Copy link
Collaborator Author

@skywinder skywinder Mar 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GCP deployment workflow specifically uses Dockerfile.datadog, not the Dockerfile.
so the immediate changes to your regular Dockerfile won't directly break the GCP workflow.

So, gcp_backend.yml refer to dockerfile.datadog, which is not affected.

file: ./backend/Dockerfile.datadog
push: true

It has 2 differences

  1. Path: in Dockerfile vs Dockerfile.datadog: - since we are running it from /backend folder directly
    Otherwise, we’ll have to move this Dockerfile to ../ to make it work, but I think the proper location is in the backend folder.

  2. Port: I set 8000 from backend readme and docs.

    omi/backend/README.md

    Lines 86 to 87 in 43508d6

    ngrok http --domain=example.ngrok-free.app 8000
    ```

    I see that in Dockerfile.datadog it's 8080. Should I set it to 8080 in dev setup as well?


EXPOSE 8080
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8080"]
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
Loading