The format breaks.
It cannot be read by the program because a greeting is added or quotation marks are missing.
It is difficult to complete a classification service using only AI API calls. Based on practical experience, I guide you through everything from implementation to deployment.
3 learners are taking this course
Level Basic
Course period Unlimited


Run a local deterministic AI model and implement probability-threshold- and priority-based classification and review logic
Developing an AI web service with authentication, asynchronous processing, and exception handling using FastAPI, Next.js, and SQLite
Designing a modular monolith that is easy to test and extend by applying layered architecture and the Strategy, Factory, and Observer patterns
Deploy and establish the operational workflow for a Docker-based customer inquiry classification and content review service
Deterministic AI · Local Model · Full-Stack Design
A Full-Stack Service Built with Open-Jev
Run a deterministic AI that answers with probabilities instead of text directly on your Mac, and build end-to-end a service that uses those probabilities to classify customer inquiries and moderate posts with FastAPI, Next.js, and SQLite.
I haven’t been able to track my delivery for a week. When on earth is it going to arrive? I’m really angry.
teamchoiceconfidence 71.7%angrynoulAssigned to the shipping team
Assigning this to the shipping team with 72% confidence.
Our code's rule: if the confidence level is 50% or higher, assign it to the appropriate team; otherwise, pass it to a human.
Why deterministic AI?
"Classify this inquiry as one of billing, shipping, or technical, and respond only in JSON." Most of the time, it works well. However, when operating it as a service, responses like this inevitably get mixed in.
It cannot be read by the program because a greeting is added or quotation marks are missing.
It was asked to choose one of the three, but it made up a fourth answer.
We cannot tell whether it is a certain answer or just a rough guess.
The above answer is an example for explanation.
Deterministic AI does not write text. It simply assigns a probability to each option we provide and returns the results, so there is no risk of the format breaking or the model making up an answer that does not exist, and its level of confidence is shown numerically. Jev, released in September 2026, attracted attention with this approach, and in this course, you will practice with Open-Jev, an independent open-source implementation inspired by Jev.
One sentence repeated throughout the course
The model only provides probabilities,
and the application decides what to do.
Determine it by looking at the confidence level for the question’s assigned team.
Determined based on the probability of “yes” for profanity, spam, and personal information.
Preview of the completed project
This is the actual execution result shown in the lecture video. The model, backend, and interface all run on my computer.
I haven’t been able to track my delivery for a week. When on earth is it coming? I’m really angry.
teamchoice · Assigned teamConfidence 71.7%urgencyscore · urgencyconfidence 23.9%Expected value 1.15 / 3
angrynoul · Customer sentimentAssign to the Delivery Team
Assigning it to the delivery team with 72% confidence.
If the confidence in the assigned team is 50% or higher, it is assigned; otherwise, a person classifies it.
This is the actual execution result shown in the lecture video (0-1) · Open-Jev 2B
My number is 010-1234-5678. Please contact me.
abusenoul · Abusive language / derogatory remarksspamnoul · Advertising / Spamprivacynoul · Personal InformationNeeds review
Human review is required: 80% exposure of personal information
If the probability of 'Yes' is 0.8 or higher, it is blocked; if it is 0.5 or higher, it is reviewed by a person.
These are the actual execution results shown in the lecture video (0–1) · Open-Jev 2B
Architecture at a Glance
View the results as probability bars and decisions.
API layer, shared hooks, and components
Qwen3.5-2B + LoRA, Mac GPU(MPS)
Beyond working code, structured code
It is a modular monolith: deployed as a single unit, but with the code divided into modules by business function. Each module is split into Controller, Service, and Mapper layers, and architecture tests automatically enforce these rules.
| Pattern | Where is it used? | What improves? |
|---|---|---|
| MVC | FastAPI router · domain · Next.js screen | Separate the recipient, processor, and presenter. |
| Strategy + Factory | Mock and real model clientsSection 7 | Swap out the model with a single line of configuration. |
| Strategy + Registry | Decision policies by preset Section 8 | For a new policy, just create one class and register it. |
| Facade | DecisionFacade.decide()Section 8 | Other modules only need to know a single entry point. |
| Observer | Event Bus and Logging Module Section 9 | Even if the logging module is removed, the decision functionality continues to work as before. |
| Data Mapper · DTO | SQL results, domain, and API input/outputSections 6 · 7 | The SQL is visible, and invalid requests are blocked in advance. |
You can learn things like this.
Curriculum
12 sections, 32 lessons. First, experience the completed projects and decision-making AI, then finalize the design and build up the code layer by layer.
Practice Environment
Both environments produce the same response format, so you can follow the backend and frontend exercises in exactly the same way.
Apple Silicon Mac (M1 or later) · 16GB or more of memory · 10GB of free disk space
./dev.sh --model
Run Open-Jev 2B directly on your Mac’s GPU. The model downloads approximately 5GB the first time.
Windows · Linux · Intel Mac
./dev.sh
All coding exercises use a fake model that responds in the same format as the real model. For Windows, we provide a PDF with instructions for setting up WSL.
Common tools: Python 3.12 or later, uv, Node.js 20 or later, pnpm, and VS Code or Cursor
Frequently Asked Questions
Technology Stack and Course Materials
Practice codeComplete project (backend, frontend, model-server)
Windows User Guide PDFFrom WSL installation to running Mock mode
Who is this course right for?
A junior developer looking to learn practical FastAPI design and AI service integration based on the fundamentals of Python and web development
A developer who wants to build automation services that go beyond using AI APIs by combining local model probabilities with business rules
An intermediate learner looking to apply layered architecture and design patterns to real-world projects to design a maintainable backend.
Practitioners looking to automate repetitive tasks such as customer inquiry classification and content moderation with AI web services
Need to know before starting?
Understanding Python basic syntax and the concepts of functions and classes
Basic web development concepts (HTTP, REST API, frontend-backend architecture)
An Apple Silicon Mac with 16GB or more, or an environment where hands-on practice in Mock mode is possible
Career Verified
2,761
Learners
326
Reviews
26
Answers
4.4
Rating
11
Courses
Hello. 😄
Sometimes I get exhausted from burnout due to childcare and work, 😅
I am an IT worker living each day with gratitude and a joyful heart. 😅
Personal Blog : https://may9noy.tistory.com
GitHub : https://github.com/Nanninggu
I wish you a life and home always filled with good things. 😀
All
33 lectures ∙ (4hr 38min)
Course Materials:
Check out other courses by the instructor!
Explore other courses in the same field!
Limited time deal
$41.80
29%
$59.40