diff --git a/demos/use_cases/travel_agents/Dockerfile b/demos/use_cases/travel_agents/Dockerfile index a5ff58e9..effb5387 100644 --- a/demos/use_cases/travel_agents/Dockerfile +++ b/demos/use_cases/travel_agents/Dockerfile @@ -2,8 +2,9 @@ FROM python:3.11-slim WORKDIR /app -# Install uv for faster dependency management -COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv +# Install bash and uv +RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* +RUN pip install --no-cache-dir uv # Copy dependency files COPY pyproject.toml README.md ./ diff --git a/demos/use_cases/travel_agents/docker-compose.yaml b/demos/use_cases/travel_agents/docker-compose.yaml index 36b666d4..dcf5108c 100644 --- a/demos/use_cases/travel_agents/docker-compose.yaml +++ b/demos/use_cases/travel_agents/docker-compose.yaml @@ -1,15 +1,18 @@ services: - jaeger: + plano: build: - context: ../../shared/jaeger - container_name: jaeger - restart: always + context: ../../../ + dockerfile: arch/Dockerfile ports: - - "16686:16686" # Jaeger UI - - "4317:4317" # OTLP gRPC receiver - - "4318:4318" # OTLP HTTP receiver - + - "12000:12000" + - "8001:8001" + environment: + - ARCH_CONFIG_PATH=/config/config.yaml + - OPENAI_API_KEY=${OPENAI_API_KEY:?OPENAI_API_KEY environment variable is required but not set} + volumes: + - ./config.yaml:/app/arch_config.yaml + - /etc/ssl/cert.pem:/etc/ssl/cert.pem weather-agent: build: context: . @@ -23,7 +26,6 @@ services: command: ["uv", "run", "python", "src/travel_agents/weather_agent.py"] extra_hosts: - "host.docker.internal:host-gateway" - flight-agent: build: context: . @@ -34,11 +36,10 @@ services: - "10520:10520" environment: - LLM_GATEWAY_ENDPOINT=http://host.docker.internal:12000/v1 - - AEROAPI_KEY=${AEROAPI_KEY:-ESVFX7TJLxB7OTuayUv0zTQBryA3tOPr} + - AEROAPI_KEY=${AEROAPI_KEY:? AEROAPI_KEY environment variable is required but not set} command: ["uv", "run", "python", "src/travel_agents/flight_agent.py"] extra_hosts: - "host.docker.internal:host-gateway" - open-web-ui: image: dyrnq/open-webui:main restart: always @@ -51,3 +52,12 @@ services: depends_on: - weather-agent - flight-agent + jaeger: + build: + context: ../../shared/jaeger + container_name: jaeger + restart: always + ports: + - "16686:16686" # Jaeger UI + - "4317:4317" # OTLP gRPC receiver + - "4318:4318" # OTLP HTTP receiver diff --git a/demos/use_cases/travel_agents/src/travel_agents/flight_agent.py b/demos/use_cases/travel_agents/src/travel_agents/flight_agent.py index d1ad8575..be63b364 100644 --- a/demos/use_cases/travel_agents/src/travel_agents/flight_agent.py +++ b/demos/use_cases/travel_agents/src/travel_agents/flight_agent.py @@ -28,7 +28,7 @@ EXTRACTION_MODEL = "openai/gpt-4o-mini" # FlightAware AeroAPI configuration AEROAPI_BASE_URL = "https://aeroapi.flightaware.com/aeroapi" -AEROAPI_KEY = os.getenv("AEROAPI_KEY", "ESVFX7TJLxB7OTuayUv0zTQBryA3tOPr") +AEROAPI_KEY = os.getenv("AEROAPI_KEY") # HTTP client for API calls http_client = httpx.AsyncClient(timeout=30.0)