| | --- |
| | title: Chatbot SQL Agent with Gemini |
| | emoji: 🔍 |
| | colorFrom: blue |
| | colorTo: purple |
| | sdk: gradio |
| | sdk_version: "5.41.1" |
| | app_file: app.py |
| | pinned: false |
| | --- |
| | |
| | # Chatbot SQL Agent with Gemini |
| |
|
| | A powerful chatbot that can answer questions by querying your SQL database using Google's Gemini model. |
| |
|
| | ## Features |
| |
|
| | - Natural language to SQL query conversion |
| | - Interactive chat interface |
| | - Direct database connectivity |
| | - Powered by Google's Gemini AI |
| | - RESTful API endpoints for integration |
| |
|
| | ## Setup |
| |
|
| | 1. Set up your environment variables in `.env` file: |
| | ```env |
| | DB_USER=tu_usuario |
| | DB_PASSWORD=tu_contraseña |
| | DB_HOST=tu_servidor |
| | DB_NAME=tu_base_de_datos |
| | GOOGLE_API_KEY=tu_api_key_de_google |
| | ``` |
| |
|
| | 2. Install dependencies: |
| | ```bash |
| | pip install -r requirements.txt |
| | ``` |
| |
|
| | 3. Run the web interface: |
| | ```bash |
| | python app.py |
| | ``` |
| |
|
| | 4. Run the API server: |
| | ```bash |
| | python api.py |
| | ``` |
| |
|
| | ## API Usage |
| |
|
| | La API proporciona dos endpoints principales: |
| |
|
| | ### 1. Enviar Mensaje de Usuario |
| |
|
| | **Endpoint:** `/user_message` |
| |
|
| | **Método:** POST |
| |
|
| | **Headers:** |
| | ``` |
| | Content-Type: application/json |
| | ``` |
| |
|
| | **Body:** |
| | ```json |
| | { |
| | "message": "tu pregunta aquí" |
| | } |
| | ``` |
| |
|
| | **Respuesta exitosa:** |
| | ```json |
| | { |
| | "message_id": "uuid-generado", |
| | "status": "success" |
| | } |
| | ``` |
| |
|
| | ### 2. Obtener Respuesta |
| |
|
| | **Endpoint:** `/ask` |
| |
|
| | **Método:** POST |
| |
|
| | **Headers:** |
| | ``` |
| | Content-Type: application/json |
| | ``` |
| |
|
| | **Body:** |
| | ```json |
| | { |
| | "message_id": "uuid-del-mensaje" |
| | } |
| | ``` |
| |
|
| | **Respuesta exitosa:** |
| | ```json |
| | { |
| | "response": "respuesta del chatbot", |
| | "status": "success" |
| | } |
| | ``` |
| |
|
| | ## Ejemplo de uso de la API |
| |
|
| | 1. Primero, envía tu pregunta: |
| | ```bash |
| | curl -X POST http://localhost:5000/user_message \ |
| | -H "Content-Type: application/json" \ |
| | -d '{"message": "¿Cuántos usuarios hay en la base de datos?"}' |
| | ``` |
| |
|
| | 2. Luego, usa el message_id recibido para obtener la respuesta: |
| | ```bash |
| | curl -X POST http://localhost:5000/ask \ |
| | -H "Content-Type: application/json" \ |
| | -d '{"message_id": "uuid-recibido"}' |
| | ``` |
| | |
| | Check out the [configuration reference](https://huggingface.co/docs/hub/spaces-config-reference) for more options. |
| | |