調(diào)用到高級(jí)定制開發(fā))
Instructional Agents API完全指南從基礎(chǔ)調(diào)用到高級(jí)定制開發(fā)【免費(fèi)下載鏈接】instructional_agents(EACL26 Main) Instructional Agents: Reducing Teaching Faculty Workload through Multi-Agent Instructional Design項(xiàng)目地址: https://gitcode.com/gh_mirrors/in/instructional_agentsInstructional Agents API是一個(gè)基于ADDIE模型的自動(dòng)化課程材料生成服務(wù)能夠顯著減輕教學(xué)人員的工作負(fù)擔(dān)。本指南將從基礎(chǔ)環(huán)境搭建到高級(jí)API定制開發(fā)為你提供完整的API使用教程幫助你快速掌握這個(gè)強(qiáng)大工具的全部功能??焖偃腴T從零開始搭建API環(huán)境 環(huán)境準(zhǔn)備與依賴安裝要開始使用Instructional Agents API你需要先準(zhǔn)備以下環(huán)境Docker和Docker Compose推薦用于生產(chǎn)環(huán)境或Python 3.11適用于本地開發(fā)最便捷的安裝方式是使用Docker容器化部署。首先克隆項(xiàng)目倉庫git clone https://gitcode.com/gh_mirrors/in/instructional_agents cd instructional_agents環(huán)境變量配置創(chuàng)建.env文件并配置必要的環(huán)境變量可參考項(xiàng)目中的.env.exampleOPENAI_API_KEYyour_openai_api_key_here API_PORT8000啟動(dòng)服務(wù)Docker方式使用Docker Compose快速啟動(dòng)服務(wù)# 構(gòu)建并啟動(dòng)服務(wù) docker-compose up -d # 查看日志 docker-compose logs -f # 停止服務(wù) docker-compose down本地開發(fā)模式可選如果你需要進(jìn)行API開發(fā)可以使用本地Python環(huán)境# 安裝依賴 pip install -r requirements.txt # 啟動(dòng)API服務(wù)器 python api_server.py # 或使用uvicorn實(shí)現(xiàn)熱重載 uvicorn api_server:app --host 0.0.0.0 --port 8000 --reloadAPI核心功能解析掌握課程生成全流程 Instructional Agents API的核心功能是自動(dòng)化課程材料生成其工作流程基于ADDIE模型分析、設(shè)計(jì)、開發(fā)、實(shí)施和評估。下面是API的主要工作流程示意圖Instructional Agents API工作流程主要API端點(diǎn)概覽API提供了以下核心端點(diǎn)涵蓋課程生成的完整生命周期端點(diǎn)方法描述/healthGET健康檢查接口確認(rèn)服務(wù)是否正常運(yùn)行/api/course/generatePOST提交課程生成任務(wù)/api/course/status/{task_id}GET查詢?nèi)蝿?wù)狀態(tài)和進(jìn)度/api/course/results/{task_id}/filesGET獲取生成結(jié)果文件列表/api/course/results/{task_id}/download/{file_path}GET下載生成的文件/api/catalog/uploadPOST上傳自定義課程配置Catalog/api/catalog/listGET列出可用的Catalog健康檢查接口在開始使用API之前建議先通過健康檢查接口確認(rèn)服務(wù)狀態(tài)GET /health成功響應(yīng)示例{ status: healthy, version: 1.0.0, timestamp: 2024-01-01T00:00:00 }基礎(chǔ)API調(diào)用創(chuàng)建你的第一個(gè)課程生成任務(wù) 提交課程生成任務(wù)使用/api/course/generate端點(diǎn)提交課程生成任務(wù)以下是一個(gè)基本示例POST /api/course/generate Content-Type: application/json { course_name: 機(jī)器學(xué)習(xí)導(dǎo)論, model_name: gpt-4o-mini, exp_name: ml_intro_v1, copilot: false, catalog: default_catalog }請求參數(shù)說明course_name(必填): 課程名稱model_name(可選): AI模型名稱默認(rèn)使用gpt-4o-miniexp_name(可選): 實(shí)驗(yàn)名稱用于區(qū)分不同的生成任務(wù)copilot(可選): 是否啟用Copilot模式默認(rèn)falsecatalog(可選): 課程配置Catalog名稱默認(rèn)使用default_catalog成功提交后API會(huì)返回任務(wù)ID{ task_id: uuid-string, status: started, message: Course generation started }查詢?nèi)蝿?wù)狀態(tài)使用返回的task_id查詢?nèi)蝿?wù)進(jìn)度GET /api/course/status/{task_id}響應(yīng)示例{ task_id: uuid-string, status: running, progress: 45, current_stage: Generating slides, error: null, created_at: 2024-01-01T00:00:00, updated_at: 2024-01-01T00:05:00, exp_name: ml_intro_v1 }任務(wù)狀態(tài)可能的值pending: 等待中running: 運(yùn)行中completed: 已完成failed: 失敗獲取和下載結(jié)果任務(wù)完成后獲取生成的文件列表GET /api/course/results/{task_id}/files然后使用以下接口下載具體文件GET /api/course/results/{task_id}/download/{file_path}高級(jí)定制使用Catalog優(yōu)化課程生成 Catalog是什么Catalog是包含課程設(shè)計(jì)參數(shù)的JSON配置文件允許你自定義課程生成的各個(gè)方面。通過Catalog你可以控制學(xué)生檔案、教師偏好、課程結(jié)構(gòu)、評估設(shè)計(jì)等。Catalog的基本結(jié)構(gòu)標(biāo)準(zhǔn)的Catalog JSON結(jié)構(gòu)如下{ student_profile: { student_background: ..., aggregate_academic_performance: ..., anticipated_learner_needs_and_barriers: ... }, instructor_preferences: { instructor_emphasis_intent: ..., instructor_style_preferences: ..., instructor_focus_for_assessment: ... }, course_structure: { course_learning_outcomes: ..., total_number_of_weeks: ..., weekly_schedule_outline: ... }, assessment_design: { assessment_format_preferences: ..., assessment_delivery_constraints: ... }, teaching_constraints: { platform_policy_constraints: ..., ta_support_availability: ..., instructional_delivery_context: ..., max_slide_count: 50 }, institutional_requirements: { program_learning_outcomes: ..., academic_policies_and_institutional_standards: ..., department_syllabus_requirements: ... }, prior_feedback: { historical_course_evaluation_results: ... } }項(xiàng)目中提供了默認(rèn)的Catalog文件catalog/default_catalog.json上傳和使用自定義Catalog首先創(chuàng)建你自己的Catalog JSON文件使用API上傳CatalogPOST /api/catalog/upload Content-Type: multipart/form-data file: your_catalog.json列出所有可用的CatalogGET /api/catalog/list在課程生成時(shí)使用自定義CatalogPOST /api/course/generate Content-Type: application/json { course_name: 深度學(xué)習(xí)基礎(chǔ), model_name: gpt-4o-mini, exp_name: dl_basics_v1, catalog: your_uploaded_catalog }輸出文件結(jié)構(gòu)詳解了解生成的課程材料 生成的課程材料會(huì)保存在exp/{exp_name}/目錄下典型的文件結(jié)構(gòu)如下exp/{exp_name}/ ├── result_instructional_goals.md # 教學(xué)目標(biāo) ├── result_resource_assessment.md # 資源評估 ├── result_target_audience.md # 目標(biāo)受眾分析 ├── result_syllabus_design.md # 課程大綱設(shè)計(jì) ├── result_assessment_planning.md # 評估計(jì)劃 ├── result_final_exam_project.md # 期末考試/項(xiàng)目設(shè)計(jì) ├── processed_chapters.json # 處理后的章節(jié)信息 ├── statistics.json # 生成統(tǒng)計(jì)數(shù)據(jù) ├── chapter_1/ # 第一章材料 │ ├── slides.tex # LaTeX幻燈片源文件 │ ├── slides.pdf # 生成的PDF幻燈片 │ ├── script.md # 教學(xué)腳本 │ └── assessment.md # 評估材料 └── chapter_2/ # 后續(xù)章節(jié)...性能優(yōu)化與最佳實(shí)踐 ?提高API調(diào)用效率的技巧課程生成時(shí)間根據(jù)章節(jié)數(shù)量和模型選擇課程生成可能需要10-60分鐘請合理安排任務(wù)提交時(shí)間批量處理對于多個(gè)相似課程考慮使用相同的Catalog模板以提高效率模型選擇測試環(huán)境可使用gpt-4o-mini提高速度生產(chǎn)環(huán)境可根據(jù)質(zhì)量需求選擇更高級(jí)的模型錯(cuò)誤處理與故障排查API使用標(biāo)準(zhǔn)HTTP狀態(tài)碼表示請求結(jié)果200: 請求成功400: 請求參數(shù)錯(cuò)誤404: 資源未找到如任務(wù)ID不存在500: 服務(wù)器內(nèi)部錯(cuò)誤錯(cuò)誤響應(yīng)格式{ detail: 具體錯(cuò)誤信息 }常見問題及解決方法Docker構(gòu)建失敗檢查網(wǎng)絡(luò)連接確保有足夠磁盤空間LaTeX包較大API服務(wù)無法啟動(dòng)檢查OPENAI_API_KEY是否設(shè)置端口是否被占用任務(wù)一直處于pending狀態(tài)檢查容器日志docker-compose logs api確保系統(tǒng)資源充足LaTeX編譯失敗檢查生成的.tex文件語法查看編譯日志exp/{exp_name}/.cache/安全建議在生產(chǎn)環(huán)境中使用API時(shí)請遵循以下安全最佳實(shí)踐限制CORS來源只允許可信域名訪問API始終使用HTTPS加密傳輸添加身份驗(yàn)證機(jī)制如API密鑰或OAuth通過環(huán)境變量管理敏感信息不要硬編碼API密鑰設(shè)置Docker資源限制和API請求超時(shí)開發(fā)指南擴(kuò)展和定制API功能 如果你需要擴(kuò)展API功能可以參考以下開發(fā)指南添加新API端點(diǎn)在api_server.py中添加新的路由函數(shù)使用Pydantic定義請求和響應(yīng)模型更新API文檔docs/API_DOCUMENTATION.md修改課程生成工作流主要業(yè)務(wù)邏輯位于以下文件src/ADDIE.py實(shí)現(xiàn)ADDIE模型的核心流程run.py任務(wù)執(zhí)行和協(xié)調(diào)修改后需要重啟API服務(wù)使更改生效??偨Y(jié)與資源 通過本指南你已經(jīng)了解了Instructional Agents API的基本使用方法和高級(jí)定制技巧。這個(gè)強(qiáng)大的工具能夠幫助教育工作者自動(dòng)生成高質(zhì)量的課程材料顯著減輕教學(xué)負(fù)擔(dān)。要深入了解更多細(xì)節(jié)請參考以下資源完整API文檔docs/API_DOCUMENTATION.md工作流文檔docs/WORKFLOW_DOCUMENTATION.md項(xiàng)目源碼src/開始使用Instructional Agents API體驗(yàn)自動(dòng)化課程設(shè)計(jì)的強(qiáng)大能力吧【免費(fèi)下載鏈接】instructional_agents(EACL26 Main) Instructional Agents: Reducing Teaching Faculty Workload through Multi-Agent Instructional Design項(xiàng)目地址: https://gitcode.com/gh_mirrors/in/instructional_agents創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考