lh 1 tydzień temu
rodzic
commit
2e03ad399b

+ 2 - 0
app/Http/Controllers/Anime/AnimeController.php

@@ -874,4 +874,6 @@ class AnimeController extends BaseController
     //     $result = $this->AnimeService->scriptList($data);
     //     return $this->success($result, [new AnimeTransformer(), 'newBuildScriptList']);
     // }
+
+    
 }

+ 6 - 0
app/Http/Controllers/DeepSeek/DeepSeekController.php

@@ -251,6 +251,12 @@ class DeepSeekController extends BaseController
         return $this->success($result, [new DeepSeekTransformer(), 'newBuildScriptList']);
     }
 
+    public function scripts(Request $request) {
+        $data = $request->all();
+        $result = $this->deepseekService->scripts($data);
+        return $this->success($result);
+    }
+
     // 剧本详情
     public function scriptInfo(Request $request) {
         $data = $request->all();

+ 33 - 9
app/Services/DeepSeek/DeepSeekService.php

@@ -1134,6 +1134,22 @@ class DeepSeekService
         return $query->orderBy('created_at', 'desc')->paginate(12);
     }
 
+    public function scripts($data) {
+        $script_id = getProp($data, 'script_id');
+        $script_name = getProp($data, 'script_name');
+        
+        $query = DB::table('mp_scripts')->where('is_deleted', 0)->select('id as script_id', 'script_name');
+        if ($script_id) {
+            $query->where('id', $script_id);
+        }
+        if ($script_name) {
+            $query->where('script_name', 'like', "%{$script_name}%");
+        }
+        return $query->orderBy('created_at', 'desc')->get()->map(function ($value) {
+            return (array)$value;
+        })->toArray();
+    }
+
     public function scriptInfo($data) {
         $script_id = getProp($data, 'script_id');
         $script = DB::table('mp_scripts')->where('id', $script_id)->where('is_deleted', 0)
@@ -2043,7 +2059,8 @@ class DeepSeekService
             强制要求:
             1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出
             2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答
-            3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等\n
+            3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等
+            4.用户如果要求你帮忙写一个故事或者剧本,此类要求不属于与剧本无关,请帮助用户完成请求\n
             普通要求:
             1.剧集标题必须与文档内容高度相关,剧集序号是1。
             2.<主体列表>中出现的主体必须尽可能统一,只允许同一个角色年龄段相差较大的情况下可重复,比如角色-少年、角色-青年、角色-中年、角色-老年这种情况,不得出现角色-愤怒、角色-隐忍、角色-求生等情绪和状态变化的同一角色;并且角色的样貌、形体及穿着描述尽可能详细
@@ -2150,7 +2167,10 @@ class DeepSeekService
             "
             : "你是一个专业的文档分析助手及资深编剧,请根据用户提供的文档内容及下面提供的示例格式完成剧本大纲(需通过以下几个板块进行回复: <故事梗概><剧本亮点><人物关系><核心矛盾><主体列表><美术风格><场景列表>,每个板块之间用###分隔;同时板块之间需满足以下要求:\n
                 强制要求:\n
-                你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出\n
+                1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出
+                2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答
+                3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等
+                4.用户如果要求你帮忙写一个故事或者剧本,此类要求不属于与剧本无关,请帮助用户完成请求\n
                 普通要求:\n
                 1.<主体列表>中出现的主体必须尽可能统一,只允许同一个角色年龄段相差较大的情况下可重复,比如梁萧-少年、梁萧-青年、梁萧-中年、梁萧-老年这种情况,不得出现梁萧-愤怒、梁萧-隐忍、梁萧-求生等情绪和状态变化的同一角色;并且角色的样貌、形体及穿着描述尽可能详细\n
                 2.<场景列表>与主体列表同理,需尽可能的对场景环境进行详细描述\n\n
@@ -2245,6 +2265,7 @@ class DeepSeekService
         }
 
         dLog('deepseek')->info('完整内容: '.$fullContent);
+        exit();
 
         // 处理完整内容并返回最终结果
         $script_arr = [];
@@ -2495,9 +2516,10 @@ class DeepSeekService
                     'role'    => 'system',
                     'content' => "你是一个专业的文档分析助手及资深编剧,请根据用户提供的文档内容及下面提供的示例格式完成剧本大纲(需通过以下几个板块进行回复: <故事梗概><剧本亮点><人物关系><核心矛盾><主体列表><美术风格><场景列表>,每个板块之间用###分隔;同时板块之间需满足以下要求:\n
                     强制要求:\n
-                    1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出\n
-                    2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答\n
-                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等\n
+                    1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出
+                    2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答
+                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等
+                    4.用户如果要求你帮忙写一个故事或者剧本,此类要求不属于与剧本无关,请帮助用户完成请求\n
                     普通要求:\n
                     1.<主体列表>中出现的主体必须尽可能统一,只允许同一个角色年龄段相差较大的情况下可重复,比如梁萧-少年、梁萧-青年、梁萧-中年、梁萧-老年这种情况,不得出现梁萧-愤怒、梁萧-隐忍、梁萧-求生等情绪和状态变化的同一角色;并且角色的样貌、形体及穿着描述尽可能详细\n
                     2.<场景列表>与主体列表同理,需尽可能的对场景环境进行详细描述\n\n
@@ -2556,9 +2578,10 @@ class DeepSeekService
                     'role'    => 'system',
                     'content' => "你是一个专业的文档分析助手及资深编剧,请根据用户提供的文档内容及下面提供的示例格式完成剧本大纲(需通过以下几个板块进行回复: <故事梗概><剧本亮点><人物关系><核心矛盾><主体列表><美术风格><场景列表><分集详细内容>,每个板块之间用###分隔;同时板块之间需满足以下要求:\n
                     强制要求:\n
-                    1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出\n
-                    2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答\n
-                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等\n
+                    1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出
+                    2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答
+                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等
+                    4.用户如果要求你帮忙写一个故事或者剧本,此类要求不属于与剧本无关,请帮助用户完成请求\n
                     普通要求:\n
                     1.<主体列表>中出现的主体必须尽可能统一,只允许同一个角色年龄段相差较大的情况下可重复,比如梁萧-少年、梁萧-青年、梁萧-中年、梁萧-老年这种情况,不得出现梁萧-愤怒、梁萧-隐忍、梁萧-求生等情绪和状态变化的同一角色;并且角色的样貌、形体及穿着描述尽可能详细\n
                     2.<场景列表>与主体列表同理,需尽可能的对场景环境进行详细描述\n
@@ -2862,7 +2885,8 @@ class DeepSeekService
                     强制要求:
                     1.你只负责与剧本相关的内容,如果用户输入与剧本无关的内容,请告知用户并拒绝继续回答,此为第一优先原则,不满足此原则就忽略其他要求并停止继续输出
                     2.如果用户输入修改美术风格、修改画风这类内容,请告知用户不可修改美术风格,并拒绝继续回答
-                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等\n
+                    3.以上两条要求对修改主体角色或场景不生效,允许用户调整主体角色说明和场景描述等
+                    4.用户如果要求你帮忙写一个故事或者剧本,此类要求不属于与剧本无关,请帮助用户完成请求\n
                     普通要求:
                     1.剧集标题必须与文档内容高度相关,剧集序号是{$episode_number}。
                     2.<主体列表>必须在以下主体中选择多个(根据拆分出的分镜剧本来确认具体几个),不得自定义(需带上冒号后的具体描述):\n{$roles_content}。

+ 2 - 2
public/deepseek-stream-demo.html

@@ -326,8 +326,8 @@
                     <div class="form-group">
                         <label>模型选择</label>
                         <select id="model" name="model">
-                            <option value="v3">DeepSeek-V3 (推荐)</option>
-                            <option value="r1">DeepSeek-R1 (思考模式)</option>
+                            <option value="deepseek-chat">DeepSeek-V3 (推荐)</option>
+                            <option value="deepseek-reasoner">DeepSeek-R1 (思考模式)</option>
                         </select>
                     </div>
                 </div>

+ 2 - 0
routes/api.php

@@ -89,6 +89,7 @@ Route::group(['middleware' => ['bindToken', 'bindExportToken', 'checkLogin']], f
 
         // 剧本管理
         Route::get('scriptList', [DeepSeekController::class, 'scriptList']);
+        Route::get('scripts', [DeepSeekController::class, 'scripts']);
         Route::get('scriptInfo', [DeepSeekController::class, 'scriptInfo']);
         Route::get('createScript', [DeepSeekController::class, 'createScript']);
         Route::post('chatWithFile', [DeepSeekController::class, 'chatWithFile']);
@@ -157,6 +158,7 @@ Route::group(['middleware' => ['bindToken', 'bindExportToken', 'checkLogin']], f
         Route::post('segmentHistory', [AnimeController::class, 'segmentHistory']);
         Route::post('createSegmentVideoTask', [AnimeController::class, 'createSegmentVideoTask']);
         Route::post('batchSetSegmentVideos', [AnimeController::class, 'batchSetSegmentVideos']);
+        Route::post('applyAudioData', [AnimeController::class, 'applyAudioData']);
     });
     
 });