Skip to content
View sepehr071's full-sized avatar
🤖
Open to AI engineering roles
🤖
Open to AI engineering roles

Block or report sepehr071

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
sepehr071/README.md

Sepehr Radmard, AI Engineer: RAG and retrieval, AI agents, evals

I build AI that finds the right source, acts on it and gets checked.
Hybrid RAG & reranking · approval-gated MCP agents · LLM-as-judge evals · realtime voice agents

Python TypeScript LlamaIndex / LlamaCloud Cohere Rerank OpenAI MCP LiveKit Agents Vercel AI SDK OpenRouter FastAPI React PostgreSQL

Animated retro terminal demo session: a Persian voice agent answers a question using a search_knowledge tool, a PM assistant pauses a jira.create_issue tool call for approval, an eval run passes 12/12 demo scenarios, then a neofetch-style card for Sepehr Radmard, AI Engineer.


What I build

  • RAG and retrieval. Hybrid dense + sparse vector search across several indexes, multi-query expansion with reciprocal rank fusion, one global Cohere rerank, and answers grounded only in retrieved passages. Scored with a RAG evaluator, not eyeballed.
  • Agents with a human in the loop. MCP and native tool calling, default-deny tool policies, hard step and dollar caps. Reads run, writes wait for a click. Plus a terminal coding agent.
  • Evals, not vibes. LLM-as-judge scoring, generated test suites for voice agents, human expert scoring side by side.
  • Voice, in real time. Speech-to-speech agents on LiveKit and OpenAI Realtime that call retrieval tools mid-conversation, plus a phone receptionist on a real Asterisk line.
  • The model drafts, code does the math. Structured outputs, deterministic parsers, every value traced back to its source. Multilingual, including Persian (RTL) support.
Capabilities, and the repos that prove them
Capability Proof
RAG, retrieval & vector search (hybrid dense + sparse over LlamaCloud vector indexes, text-embedding-3-large, multi-query fusion, Cohere rerank, grounded answers, RAG evaluation) rag-service · rag-evaluator · livekit-fa-agent · product-assistant
Realtime voice agents (LiveKit, speech-to-speech) livekit-fa-agent · voice-chess-coach · product-assistant
Telephony voice AI (Asterisk, Android dialer) phone-agent
Tool-calling / MCP agents (approval gates in pm-assistant, pr-agent, dongeto) pm-assistant · agent-studio · pr-agent · dongeto
MCP servers (14 on PyPI, Iranian services) snapp-mcp · digikala-mcp · mrbilit-mcp · bale-mcp · payping-mcp · and 9 more
Coding agents sepicode · pr-agent
LLM evals (LLM-as-judge, test generation, human scoring) voice-agent-testgen · rag-evaluator · polymind
Structured output and document AI (OCR, diarization, vision) invoice-extractor · meeting-assistant · feedo · ai-explain · steel-market-analyst
Text-to-SQL with guardrails erp-sql-agent
AI safety (DLP, sandboxing, prompt-injection guards, step and spend caps) polymind · invoice-extractor · ai-explain · sepicode

Featured projects

rag-service architecture: query, multi-query expansion, hybrid retrieval, fusion, Cohere rerank, top-k passages A hybrid retrieval API: one HTTP call turns a question into a short, reranked list of source passages that any LLM agent can use as a retrieval tool.

Hybrid dense + sparse search over several LlamaCloud vector indexes (text-embedding-3-large) · 3 LLM paraphrases + reciprocal rank fusion · one global Cohere rerank, falls back to fusion order on failure
Python · FastAPI · LlamaIndex · LlamaCloud · Cohere Rerank
PM Assistant: chat with tool calls and the approval gate (demo data) A local-first AI copilot for project managers: reads and acts across Jira, GitHub, Slack and more, and every write waits for your click.

Default-deny tool policy · approve/reject mid-stream (browser or Telegram) · plain-English rules compiled once, polled with zero LLM calls
Python · FastAPI · React 19 · SQLite · MCP
Polymind: model arena comparing three models side by side (demo data) A self-hosted, multi-model AI workspace with a DLP gate, sandboxed code execution and first-class Persian (RTL) support.

Side-by-side arena + judged debates between 2-5 models · DLP scan before any provider · LLM-written pandas runs under bubblewrap, no network
Python · FastAPI · PostgreSQL · React · OpenRouter
Rahnama: Persian speech-to-speech voice agent (demo data) A Persian voice agent that talks back in real time and answers only from retrieved passages, built to work on filtered networks.

RAG via a search_knowledge tool call · turn-taking tuned for Farsi pauses · UDP → ICE/TCP fallback
Python · LiveKit Agents · OpenAI Realtime · nginx
sepicode editing a file in the terminal (scripted demo data) A full-screen terminal coding agent that reads, edits, searches and runs your code, with hard step and dollar caps on every turn.

Streaming Markdown, live tool-call timeline, inline diffs · nine zod-typed tools · read-only sub-agent capped at 8 steps / $0.25
Bun · TypeScript · React · OpenTUI · OpenRouter
Speaker-attributed minutes of a fictional Persian meeting (demo data) Drop in a Persian meeting recording; get back who said what, the decisions, the action items and a follow-up email.

Parallel chunked transcription with speaker stitching across seams · minutes from diarized words, summaries via strict JSON schema
Python · FastAPI · Next.js · ElevenLabs Scribe v2

MCP servers for Iranian services

Plug Iran's everyday apps into Claude, Cursor, VS Code or any MCP client. Each one is a small Python stdio server on PyPI: uvx <name> and go.

snapp-mcp: an agent finds the cheapest pizza with delivery on Snappfood Search Snappfood and SnappMarket food and groceries, compare full prices with packaging and delivery, find deals. digikala-mcp: an agent compares every seller of a phone on Digikala with its 30-day price low Search Digikala with feature filters, best picks for a budget, every seller's price, price history and reviews.
mrbilit-mcp
Travel · cheapest flights, trains, buses and hotels, with seats and refund rules
jabama-mcp
Travel · villas and stays at exact prices, tours, events and theater tickets
otaghak-mcp
Travel · villas and cottages, availability, exact prices, reviews
technolife-mcp
Shopping · electronics, sellers and installment prices
masterkala-mcp
Shopping · gadgets and accessories, prices and specs
shopino-mcp
Fashion · thousands of shops, sizes, stock, shop ratings
khanoumi-mcp
Beauty · cosmetics and perfume, shades, reviews
asalbanoo-mcp
Beauty · skin and hair care, variants, deals
doctoreto-mcp
Health · doctors, visit fees, free slots, clinics, labs
paziresh24-mcp
Health · doctor profiles, prices, reviews, free slots
bale-mcp
Messaging · your Bale bot reads, answers and sends files
payping-mcp
Payments · your PayPing sales, customers, payment links, invoices

Store, travel and health servers are unofficial and read-only. Bale and PayPing run locally with your own token.


More projects

Product Talk kiosk mid-conversation (demo data)
product-assistant
Scan a product, ask it out loud about sugar or allergens. Realtime voice grounded in pack facts.
phone-agent architecture diagram
phone-agent
Persian AI phone receptionist on a real line: Asterisk AudioSocket, 8 kHz PCM, plus an Android dialer app.
Voice Agent TestKit: a judged test run (demo data)
voice-agent-testgen
Paste a voice agent's prompt, get a judged test suite back. Runs the real agent via LiveKit's AgentSession.
Agent Studio: an agent turn with an MCP tool call (demo data)
agent-studio
Persian-first AI workbench: native tools and MCP servers (stdio, HTTP, SSE), every step visible in the chat.
PR Agent: dashboard reviewing a merge request (demo data)
pr-agent
Seven AI reviewers on every GitLab merge request, one human who decides what gets posted.
Accounting dashboard with audit flags (demo data)
erp-sql-agent
Ask your ledger in Persian, get audited numbers. SELECT-only SQL tool with a forced LIMIT.
RAG Evaluator: aggregate judge scores dashboard (demo data)
rag-evaluator
LLM-as-judge on four criteria, plus human experts scoring the same answers with AI scores hidden.
METAP: AI analysis screen (demo data)
steel-market-analyst
Price PDFs in, grounded market read out. 13 named hallucination failure modes in the prompt pack.
invoice-ai review UI on a synthetic invoice
invoice-extractor
OCR + LLM extraction, every value linked to its box on the page. Injection-guarded, runs fully local.
Dongeto: Farsi chat, draft card and settlement slip (demo data)
dongeto
Type the expense in Farsi. The LLM drafts it, unit-tested code does the money math.
Feedo: reports dashboard and mobile intake form (demo data)
feedo
Plain-Persian bug reports plus screenshots in, structured drafts out. The model never picks IDs.
AI Explain: landing page next to a generated canvas
ai-explain
Ask anything, get an interactive HTML/SVG explainer, planned and streamed into a sandboxed iframe.
Voice chess coach with a live board and bilingual transcript (demo data)
voice-chess-coach
Play White by voice against a coach on a live board. tool_choice="required" + python-chess own the rules.
Off the clock: True Anomaly, a WebGPU space sim
True Anomaly: chase view near Jupiter with the live HUD
Fly a 6DOF probe through a real-scale solar system in the browser, every planet placed from NASA/JPL Horizons data. Physics in true kilometres with a Newton-iteration Kepler solver, rendered on Three.js WebGPURenderer with a WebGL fallback.

All screenshots use demo or synthetic data. Open any repo for architecture notes, setup and more screenshots.

🕹️ Commit arcade

Breakout game animated over Sepehr's GitHub contribution graph: a ball bounces around breaking contribution-day bricks

My last year of commits as Breakout bricks, regenerated daily. Play it yourself · made with pacman-contribution-graph

Pinned Loading

  1. rag-service rag-service Public

    Hybrid retrieval API for LLM agents: multi-query fusion, dense + sparse search over LlamaCloud vector indexes, Cohere rerank. FastAPI, tested.

    Python

  2. polymind polymind Public

    Polymind: self-hosted multi-model AI workspace with side-by-side arenas, judged debates, a workflow canvas, sandboxed code execution and a DLP gate.

    Python

  3. livekit-fa-agent livekit-fa-agent Public

    Persian speech-to-speech voice agent on LiveKit that answers only from retrieved passages (RAG), built for filtered networks.

    Python 1 1

  4. meeting-assistant meeting-assistant Public

    Persian meeting recorder: chunked speaker diarization with speaker stitching, schema-validated LLM summaries, searchable minutes.

    TypeScript 2 1

  5. pm-assistant pm-assistant Public

    Local-first AI copilot for project managers: MCP tools across Jira, GitHub, Slack and more, approval-gated writes, natural-language rules engine.

    Python 1

  6. voice-chess-coach voice-chess-coach Public

    Talk to a chess coach and play by voice in Persian or English: LiveKit voice agent + tool-calling model driving a live board, python-chess owns the rules.

    TypeScript