feat: Implement AI script generation for audiobook projects

This commit is contained in:
2026-03-13 11:29:56 +08:00
parent 444dcb8bcf
commit 35bf7a302a
14 changed files with 682 additions and 17 deletions

View File

@@ -1,5 +1,15 @@
import apiClient from '@/lib/api'
export interface ScriptGenerationRequest {
title: string
genre: string
subgenre?: string
premise: string
style?: string
num_characters?: number
num_chapters?: number
}
export interface AudiobookProject {
id: number
user_id: number
@@ -8,6 +18,7 @@ export interface AudiobookProject {
status: string
llm_model?: string
error_message?: string
script_config?: Record<string, unknown>
created_at: string
updated_at: string
}
@@ -58,6 +69,11 @@ export interface LLMConfig {
}
export const audiobookApi = {
createAIScript: async (data: ScriptGenerationRequest): Promise<AudiobookProject> => {
const response = await apiClient.post<AudiobookProject>('/audiobook/projects/generate-script', data)
return response.data
},
createProject: async (data: {
title: string
source_type: string