01

Aivoa CRM

AI-first CRM for pharma field reps. A read-only 'Log Interaction' form driven entirely by a LangGraph agent — reps describe a visit in plain English and the assistant extracts, edits, and persists every field. No manual typing, ever.

LANGGRAPHGROQFASTAPIPOSTGRES
Year
2026
Role
Assignment
Type
AI / CRM
Visit live site ↗

Overview

A split-screen tool for pharmaceutical field representatives. The left pane is a read-only 'Log Interaction' form; the right pane is an AI assistant. The form never accepts manual input — every field is populated, corrected, and saved through a LangGraph agent powered by a Groq LLM. A sentence like 'Met Dr. Smith today, discussed Prodo-X efficacy, sentiment positive, shared brochures' becomes a structured, persisted CRM record.

The problem

Field reps lose time filling rigid CRM forms after every visit. The brief called for an interface where the form is entirely agent-driven: natural language in, structured records out, with no manual field editing. The hard part was reliable tool routing — extracting entities, normalizing dates and sentiment, merging corrections without wiping unmentioned fields, and persisting full CRUD — while keeping the model cheap and fast enough for repeated calls.

Highlights

  • 8 LangGraph tools (assignment minimum was 5): log, edit, submit, list, select, update, delete, and clear — full CRUD against PostgreSQL.
  • Entity extraction with date and sentiment normalization turns a single sentence into HCP, date, sentiment, materials, topics, and interaction type.
  • The edit tool merges corrections into the open form without overwriting fields the user never mentioned.
  • Switched from the decommissioned gemma2-9b-it to openai/gpt-oss-20b for reliable, low-cost tool routing (configurable via GROQ_MODEL).
  • Lazy SQLAlchemy setup — the app boots without a database; state-only tools work offline while CRUD tools use Postgres when configured.
  • React + Vite + Redux Toolkit three-pane frontend; FastAPI backend on create_react_agent with per-session memory.