Generation Page (complete rebuild): - Full production-parity exam generation wizard with 4 IELTS modules - Reading: AI passage gen, 5 exercise types (MCQ, Fill, Write, T/F, Match) - Listening: 4 section types, AI context gen, TTS audio gen (ElevenLabs) - Writing: Task 1/2, AI instruction gen, word limits, marks - Speaking: 3 parts, AI script gen, avatar video gen (7 avatars) - Per-module config: timer, CEFR difficulty, access, approval, rubrics - Exam submission workflow (draft/published) Exam Structures: - New encoach.exam.structure model + CRUD controller - ExamStructuresPage wired to real API AI Module (encoach_ai): - OpenAI service, ElevenLabs TTS, AWS Polly, ELAI avatars - AI settings model with Odoo config parameters - 7 generation endpoints (passage, exercises, instructions, scripts, context) Vector Module (encoach_vector): - pgvector integration for RAG-based content search - Embedding service with sentence-transformers Exam Session Fixes: - Fixed ExamSession.tsx field mapping (question_type→type, exam_title→title) - Fixed submit payload to include attempt_id and answers - Fixed normalizeType to handle null/undefined Tested: 12/12 API tests passed, browser-verified with real OpenAI calls Made-with: Cursor
32 lines
1.3 KiB
XML
32 lines
1.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<odoo noupdate="1">
|
|
<record id="ai_default_enabled" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.enabled</field>
|
|
<field name="value">True</field>
|
|
</record>
|
|
<record id="ai_default_model" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.openai_model</field>
|
|
<field name="value">gpt-4o</field>
|
|
</record>
|
|
<record id="ai_default_fast_model" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.openai_fast_model</field>
|
|
<field name="value">gpt-3.5-turbo</field>
|
|
</record>
|
|
<record id="ai_default_tts" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.tts_provider</field>
|
|
<field name="value">polly</field>
|
|
</record>
|
|
<record id="ai_default_retries" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.max_retries</field>
|
|
<field name="value">3</field>
|
|
</record>
|
|
<record id="ai_default_region" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.aws_region</field>
|
|
<field name="value">eu-west-1</field>
|
|
</record>
|
|
<record id="ai_default_11labs_model" model="ir.config_parameter">
|
|
<field name="key">encoach_ai.elevenlabs_model</field>
|
|
<field name="value">eleven_multilingual_v2</field>
|
|
</record>
|
|
</odoo>
|