UPTIME: 00:00:00 MEM: 64KB CPU: 12%
user@fbotto:~/projects$
< cd ..

AI Powered Chatbot

> Year: 2025 | > Stack: Python, NLP, RAG, FastAPI, React

> I worked on an AI-powered chatbot for AROL S.p.A, designed to make a large industrial machine catalog easy to query in natural language, supporting both customer interaction and internal automation. The system is built to answer questions over a dataset of 700+ machines, returning quick, practical responses that feel like talking to a knowledgeable product expert.

[ KEY FEATURES ]

  • Clean client–server architecture: React UI (Axios) connected to a backend that orchestrates reasoning and data access.
  • Async chatbot API: FastAPI exposes the assistant as asynchronous endpoints for responsive UI interactions.
  • LLM workflow orchestration: LangChain coordinates multi-step prompting, tool calls, and grounding logic end-to-end.
  • Dual reasoning modes: combines NLP Text-to-SQL for structured catalog queries and RAG for semantic/explanatory questions.
  • NLP Text-to-SQL pipeline: translates questions into SQL over a database derived from the catalog PDF, then converts results into sales-oriented answers.
  • RAG grounding: embeds catalog knowledge in a vector database and retrieves the top-5 most relevant chunks (cosine similarity) to support accurate responses.
  • Fast, cost-effective inference: uses Groq as the inference provider to optimize latency and cost.
  • Reproducible deployment: hosted on Render with Git-based builds, designed to keep the pipeline simple and handle practical constraints like cold starts.

[ TECH STACK ]

  • Frontend: React
  • Backend: FastAPI
  • LLM: NLP, RAG, LangChain, Groq
  • Deployment: Render