Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/atsepkov_agentic-doc-system.json
T

1 line
3.9 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "atsepkov/agentic-doc-system", "files": {"config.py": {"d8f3711b8185d9a6adb65e4ea83bf864b2de587e": {"t": 1785745414.0837584, "n": 1723, "h": "f8e2af4a20087b35", "c": "\"\"\"\nconfig.py: central settings, loaded from environment variables.\n\"\"\"\nimport os\nfrom dataclasses import dataclass\nfrom dotenv import load_dotenv\n\nload_dotenv()\n\n@dataclass\nclass Config:\n # LLM provider: \"deepseek\" | \"gemini\" | \"groq\"\n llm_provider: str = os.getenv(\"LLM_PROVIDER\", \"deepseek\")\n\n # API keys (only the active provider's key is required)\n deepseek_api_key: str = os.getenv(\"DEEPSEEK_API_KEY\", \"\")\n gemini_api_key: str = os.getenv(\"GEMINI_API_KEY\", \"\")\n groq_api_key: str = os.getenv(\"GROQ_API_KEY\", \"\")\n openai_api_key: str = os.getenv(\"OPENAI_API_KEY\", \"\")\n\n # Model to use — falls back to the provider's default if not set\n model: str = os.getenv(\"MODEL\", \"\")\n\n # ChromaDB\n chroma_persist_dir: str = os.getenv(\"CHROMA_PERSIST_DIR\", \"./.chroma_db\")\n chroma_collection: str = os.getenv(\"CHROMA_COLLECTION\", \"documents\")\n\n # Embedding model (local, no API key needed)\n embedding_model: str = os.getenv(\"EMBEDDING_MODEL\", \"all-MiniLM-L6-v2\")\n\n # Chunking (characters, not tokens — ~100–150 tokens per 512 chars)\n chunk_size: int = int(os.getenv(\"CHUNK_SIZE\", \"512\"))\n chunk_overlap: int = int(os.getenv(\"CHUNK_OVERLAP\", \"64\"))\n\n # Max chunks returned per summarize_document() call when summarizing\n # multiple documents in one response (prevents context overflow)\n max_chunks_multi_doc: int = int(os.getenv(\"MAX_CHUNKS_MULTI_DOC\", \"8\"))\n\n # Source documents directory (used by query_csv to locate files on disk)\n docs_dir: str = os.getenv(\"DOCS_DIR\", \"./docs\")\n\n # Retrieval\n top_k: int = int(os.getenv(\"TOP_K\", \"5\"))\n\n # Agent loop guard\n max_iterations: int = int(os.getenv(\"MAX_ITERATIONS\", \"12\"))\n\n\ncfg = Config()\n"}, "aa48a72b29fd3e7550aa3620b588efed74802061": {"t": 1785752954.5256176, "n": 1722, "h": "446308db8abff8d7", "c": "\"\"\"\nconfig.py: central settings, loaded from environment variables.\n\"\"\"\nimport os\nfrom dataclasses import dataclass\nfrom dotenv import load_dotenv\n\nload_dotenv()\n\n@dataclass\nclass Config:\n # LLM provider: \"deepseek\" | \"gemini\" | \"groq\"\n llm_provider: str = os.getenv(\"LLM_PROVIDER\", \"deepseek\")\n\n # API keys (only the active provider's key is required)\n deepseek_api_key: str = os.getenv(\"DEEPSEEK_API_KEY\", \"\")\n gemini_api_key: str = os.getenv(\"GEMINI_API_KEY\", \"\")\n groq_api_key: str = os.getenv(\"GROQ_API_KEY\", \"\")\n openai_api_key: str = os.getenv(\"OPENAI_API_KEY\", \"\")\n\n # Model to use — falls back to the provider's default if not set\n model: str = os.getenv(\"MODEL\", \"\")\n\n # ChromaDB\n chroma_persist_dir: str = os.getenv(\"CHROMA_PERSIST_DIR\", \"./.chroma_db\")\n chroma_collection: str = os.getenv(\"CHROMA_COLLECTION\", \"documents\")\n\n # Embedding model (local, no API key needed)\n embedding_model: str = os.getenv(\"EMBEDDING_MODEL\", \"all-MiniLM-L6-v2\")\n\n # Chunking (characters, not tokens — ~100–150 tokens per 512 chars)\n chunk_size: int = int(os.getenv(\"CHUNK_SIZE\", \"512\"))\n chunk_overlap: int = int(os.getenv(\"CHUNK_OVERLAP\", \"64\"))\n\n # Max chunks returned per summarize_document() call when summarizing\n # multiple documents in one response (prevents context overflow)\n max_chunks_multi_doc: int = int(os.getenv(\"MAX_CHUNKS_MULTI_DOC\", \"8\"))\n\n # Source documents directory (used by query_csv to locate files on disk)\n docs_dir: str = os.getenv(\"DOCS_DIR\", \"./docs\")\n\n # Retrieval\n top_k: int = int(os.getenv(\"TOP_K\", \"5\"))\n\n # Agent loop guard\n max_iterations: int = int(os.getenv(\"MAX_ITERATIONS\", \"8\"))\n\n\ncfg = Config()\n"}}}}