← all repositories
lishuangqiang/AI-Meeting

A mock-interview backend that reads like a systems design answer sheet

AI-Meeting is a Spring Boot 3 + Spring AI backend for resume-driven mock interviews — and a surprisingly thorough showcase of distributed state, streaming, and concurrency patterns.

AI-Meeting
Collecting fresh signals — velocity needs a few days of history.
collecting data…
star history

What it does

Upload a PDF resume and a crew of five workflow agents takes over: one parses the resume and generates questions, others ask, score, follow up, and even judge your on-camera demeanor. Answers come back with per-question scores, feedback, a radar chart, and an AI summary. Alongside the interview module there’s a general AI chat (SSE streaming, multi-model via an OpenAI-compatible UniversalAiChatHandler), agent configuration management, and real-time speech transcription plus long-text TTS over WebSocket.

The interesting bit

The real substance is plumbing most AI demos skip: a distributed single-flight framework (Redis Lua + fencing tokens) so the same answer-scoring request only triggers one AI call across multiple instances, and long-session state governance using MongoDB hot/cold snapshots with Redis lazy loading, CAS protection, and async compensation — so a two-hour interview survives a mid-session disconnect. The ASR pipeline does segment-level incremental deduplication with a TreeMap keyed on seg_id, which is the kind of detail you only write after being burned by duplicated transcript text.

Key highlights

  • Five-agent interview workflow (questioner, asker, scorer, follow-up, expression analyst) orchestrated via LiteFlow rule chains
  • Multi-model access (DeepSeek, Spark, Doubao) through one OpenAI-compatible handler, switchable at runtime
  • SSE streaming with typewriter output, including DeepSeek reasoning_content chain-of-thought display
  • Resilience4j circuit breaking, rate limiting, and retries around AI calls; Sa-Token auth with Redis-shared sessions
  • Docker Compose deployment covering MySQL, MongoDB, Redis, and the app; GitHub Actions CI runs tests and build

Caveats

  • The README doubles as a funnel for a paid commercial SaaS (Chiron Agent) and paid “source code learning” — the open repo is MIT, but the docs are partly a sales pitch, and free study docs require adding the authors on WeChat
  • It leans on iFlytek (讯飞) SDKs for ASR, TTS, OCR, and expression recognition, so those capabilities depend on that vendor’s services and credentials
  • The README openly frames the project as resume/interview-portfolio material — it’s a well-engineered learning artifact, not a product you’d run as-is

Verdict

Java developers wanting a concrete, non-toy example of Spring AI plus distributed systems patterns (single-flight, snapshot recovery, streaming) will get a lot out of reading this code. If you want a turnkey interview product, note that the polished version is the paid SaaS, not this repo.

Frequently asked

What is lishuangqiang/AI-Meeting?
AI-Meeting is a Spring Boot 3 + Spring AI backend for resume-driven mock interviews — and a surprisingly thorough showcase of distributed state, streaming, and concurrency patterns.
Is AI-Meeting open source?
Yes — lishuangqiang/AI-Meeting is open source, released under the MIT license.
What language is AI-Meeting written in?
lishuangqiang/AI-Meeting is primarily written in Java.
How popular is AI-Meeting?
lishuangqiang/AI-Meeting has 1.1k stars on GitHub.
Where can I find AI-Meeting?
lishuangqiang/AI-Meeting is on GitHub at https://github.com/lishuangqiang/AI-Meeting.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.