--- title: IntelliHire emoji: 😻 colorFrom: purple colorTo: gray sdk: docker pinned: false license: mit --- # IntelliHire **IntelliHire** is an intelligent candidate discovery tool that uses OpenAI's language models and Google Search via SerpAPI to find potential candidates (e.g., from LinkedIn) based on natural language queries. It indexes the results using FAISS and allows semantic querying through an API. ## Features * Converts natural language job search queries to structured Google search queries. * Retrieves candidate snippets from Google using SerpAPI. * Indexes results with FAISS for semantic search. * Exposes a `/search` endpoint via FastAPI. ## Requirements * Python 3.9+ * Azure OpenAI credentials * SerpAPI key * `.env` file with required Azure credentials ## Installation ```bash pip install -r requirements.txt ``` ### Required `.env` variables ```env AZURE_API_KEY=your_azure_api_key AZURE_VERSION=your_api_version AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/ ``` ## Usage Start the API: ```bash uvicorn main:app --reload ``` ### POST `/search` Search for potential candidates using natural language. **Request Body:** ```json { "query": "Find React developer in Bangalore" } ``` **Response:** ```json { "results": [ { "metadata": { "name": "John Doe", "link": "https://linkedin.com/in/johndoe" }, "text": "Experienced React developer based in Bangalore..." }, ... ] } ``` ## Tech Stack * **FastAPI** – Web framework * **Azure OpenAI** – LLM for query transformation * **SerpAPI** – Google Search API * **LlamaIndex + FAISS** – Vector indexing and retrieval ## Notes * Ensure your Azure deployment has a model named `agile4` or adjust the model name accordingly. * This setup assumes semantic search over Google snippets rather than full LinkedIn profiles. ## License MIT