AI Engineer · Open to remote

AI that cites
the source.
And knows how
to say “I don't know.”

I'm Rafael Prado. I build applied AI systems in Python — RAG with citations verified against the source text, and agents that resolve a task end to end. Before that, five years of full-stack web work, which I still deliver through SparkWeb.

RAGCitations verified against the source
AgentsCrewAI + Claude in a typed pipeline
5+ yearsOf full-stack web before AI
crivo · due diligence

QuestionIs there a non-compete clause? For how long?

Yes. The contract provides for a 24-month non-compete after termination, limited to national territory.

Cited source Acquisition Agreement — Clause 8.2, p. 14
citation checked against the source text out of scope → the system abstains
✦ Zero answers without a source
10/10 Correct abstentionsOn out-of-domain questions
Stack I use
day to day
Python FastAPI Claude API CrewAI ChromaDB BGE-M3 Pydantic v2 pytest Docker Streamlit Deepgram ElevenLabs
Rafael Prado
AI Engineer
Who does it

Rafael
Prado

I spent five years delivering websites and full-stack systems. Today I build the layer they were missing: AI that answers with a source and recognizes the limits of what it knows.

What interests me in applied AI is not simply wiring APIs together. In Crivo, that means proving every citation; in Fluencto, measuring the real time from user speech to audio response; in AIR, preserving typed contracts between agents. Every project pairs its demo with evidence and explicit limitations.

In parallel I still lead SparkWeb, delivering institutional sites and landing pages for clients across Brazil — now with AI integrated into every step, from research and copy to code review.

Python RAG & vector search Multi-agent systems Context engineering LLM evaluation FastAPI WordPress UX/UI
AI projects

What I've built in AI

Three open-source projects exploring different engineering challenges: RAG reliability, voice latency, and agent coordination. Each case presents its architecture, evidence, and what is still under validation.

RAG · Actively developed

Crivo

RAG for contract due diligence, with citations verified against the source text.

The problem

In contract analysis, an answer without a citation to the document, clause, and page is worth nothing — and an LLM will confidently make one up. Indexing a PDF is the easy part; the hard part is delivering proof that the system didn't hallucinate.

How I solved it — four barriers against hallucination

  1. Threshold-based abstention. If the score of the retrieved chunks doesn't clear the minimum, the system doesn't answer.
  2. Numbered context and a closed prompt. Each chunk enters with document, clause, and page; the prompt forbids outside knowledge.
  3. Literal citation verification. Fuzzy matching ≥ 0.90 between the cited passage and the source text — if it doesn't pass, it doesn't ship.
  4. Full trail. The interface shows the entire source text with the cited passage highlighted.
Multi-agent system

Autonomous Incident Resolver

A multi-agent system (CrewAI + Claude) that reads a production error log, finds the root cause, audits the code, and delivers a tested patch — with an incident report generated end to end.

The problem

Incident triage eats up the team's most expensive time: reading the stack trace, correlating requests, finding the line, and writing the fix plus the test that proves it works.

How I solved it — three agents, one typed hand-off

  1. LogAnalyst. Runs SRE-style triage: isolates the application frames and correlates request IDs until it identifies the trigger.
  2. CodeAuditor. Confirms the hypothesis and hunts for latent defects along the code path, beyond the reported crash.
  3. PatchEngineer. Turns the audit into a minimal patch, converts the business error into a 4xx response, and writes the regression test.

The hand-offs between agents are typed Pydantic objects, not free text — that's what keeps information from degrading from one stage to the next.

All three repositories are open — with architecture, tests, technical decisions, and documented limitations.

View the full GitHub
How I work

AI is a tool. Engineering is the job.

The same six-step process, whether it's a RAG system or a multi-step agent. AI speeds up every one of them — none of them are its call to make alone.

01

Understand the problem

Before any prompt: what needs to be true for the solution to work, and what happens if it's wrong.

02

Scope and data

What data goes in, where it comes from, how it's split — and, most importantly, what the system must not answer.

03

Fast prototype

AI as a pair-programmer to get something running in days, not weeks — and find out early what doesn't work.

04

Architecture and contracts

Explicit schemas and types between stages. It's at the boundary between components that information gets lost — in software and in AI pipelines alike.

05

Evaluation

Golden set, automated tests, and accuracy and abstention metrics. Without that it's a nice demo, not a system.

06

Delivery and observability

Docker, logs, and what needs to be watched after deploy. Delivery is the start of maintenance, not the end of the project.

Contact

Let's talk?

I'm open to AI Engineer roles — remote or hybrid — and to bespoke applied AI projects. For a website or landing page, SparkWeb is still taking on new work.

📍 Open to remote work worldwide ✉️ [email protected] 🎨 behance.net/rafapradev