Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
15 changes: 15 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
FROM python:3.12-slim as builder

WORKDIR /app
COPY pyproject.toml .
RUN pip install -e .

FROM python:3.12-slim as runtime

WORKDIR /app
COPY --from=builder /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages
COPY --from=builder /usr/local/bin /usr/local/bin
COPY src/ ./src/

EXPOSE 8000
CMD ["uvicorn", "src.api.app:create_app", "--host", "0.0.0.0", "--port", "8000", "--factory"]
15 changes: 0 additions & 15 deletions agent_system/Dockerfile

This file was deleted.

9 changes: 5 additions & 4 deletions agent_system/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,19 +59,20 @@ A self-optimizing blog generation agent that creates SEO-optimized content using

```bash
git clone <repository-url>
cd gemini-with-search
cd agent_system
```

2. **Create virtual environment**

```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
python -m venv .venv
source .venv/bin/activate # On Windows: venv\Scripts\activate
```

3. **Install dependencies**

```bash
pip install -r requirements.txt
pip install -e .
```

Expand All @@ -93,7 +94,7 @@ Create a `.env` file with the following variables:

```env
GOOGLE_API_KEY=your_google_api_key_here
GEMINI_MODEL=gemini-1.5-pro-latest
GEMINI_MODEL=gemini-2.5-flash
LANGSMITH_API_KEY=your_langsmith_api_key_here
LANGSMITH_PROJECT=gemini-search-blog-agent
MAX_CONCURRENT_REQUESTS=10
Expand Down
45 changes: 0 additions & 45 deletions agent_system/docker-compose.yml

This file was deleted.

10 changes: 9 additions & 1 deletion agent_system/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ anyio==4.9.0
attrs==25.3.0
babel==2.17.0
beautifulsoup4==4.13.4
black==25.1.0
cachetools==5.5.2
certifi==2025.7.14
charset-normalizer==3.4.2
Expand All @@ -21,6 +22,8 @@ google-api-core==2.25.1
google-api-python-client==2.176.0
google-auth==2.40.3
google-auth-httplib2==0.2.0
google-custom-search==3.0.0
google-genai==1.26.0
google-generativeai==0.8.5
googleapis-common-protos==1.70.0
greenlet==3.2.3
Expand Down Expand Up @@ -55,9 +58,13 @@ multidict==6.6.3
mypy_extensions==1.1.0
numpy==2.3.1
openai==1.97.0
-e git+ssh://git@github.com/solve-ease/OptiBlogAi.git@98832b544e26ab25cf2140ab04fcd78e8fdbd151#egg=optiblogai&subdirectory=agent_system
orjson==3.11.0
ormsgpack==1.10.0
packaging==25.0
pathspec==0.12.1
platformdirs==4.3.8
playwright==1.53.0
propcache==0.3.2
proto-plus==1.26.1
protobuf==5.29.5
Expand All @@ -66,6 +73,7 @@ pyasn1_modules==0.4.2
pydantic==2.11.7
pydantic-settings==2.10.1
pydantic_core==2.33.2
pyee==13.0.0
pyparsing==3.2.3
python-dateutil==2.9.0.post0
python-dotenv==1.1.1
Expand All @@ -81,7 +89,7 @@ soupsieve==2.7
SQLAlchemy==2.0.41
starlette==0.47.1
structlog==25.4.0
tenacity==9.1.2
tenacity==8.5.0
tiktoken==0.9.0
tld==0.13.1
tqdm==4.67.1
Expand Down
9 changes: 9 additions & 0 deletions agent_system/smoke_test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import asyncio
from src.agents.graph import get_blog_generation_graph

async def smoke():
g = await get_blog_generation_graph()
result = await g.run_blog_generation("AI trends 2025")
print("✅ SUCCESS" if result["success"] else "❌ FAILED", result["final_score"])

asyncio.run(smoke())
2 changes: 1 addition & 1 deletion agent_system/src/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
"""Gemini-with-Search Blog Agent."""
"""Gemini-with-Search Blog Agent."""
2 changes: 1 addition & 1 deletion agent_system/src/agents/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
"""LangGraph agent modules."""
"""LangGraph agent modules."""
Loading
Loading