DeepSeekController.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace App\Http\Controllers\DeepSeek;
  3. use App\Facade\Site;
  4. use App\Consts\ErrorConst;
  5. use App\Exceptions\ApiException;
  6. use App\Libs\ApiResponse;
  7. use App\Libs\Utils;
  8. use App\Services\DeepSeek\DeepSeekService;
  9. use Illuminate\Http\Request;
  10. use Illuminate\Routing\Controller as BaseController;
  11. use Illuminate\Support\Facades\Redis;
  12. use Illuminate\Support\Facades\Validator;
  13. class DeepSeekController extends BaseController
  14. {
  15. use ApiResponse;
  16. protected $deepseekService;
  17. public function __construct(
  18. DeepSeekService $deepseekService
  19. ) {
  20. $this->deepseekService = $deepseekService;
  21. }
  22. /**
  23. * 可选供应商
  24. *
  25. * @param Request $request
  26. * @return mixed
  27. */
  28. public function chatWithReasoner(Request $request) {
  29. // 忽略所有超时限制
  30. set_time_limit(0);
  31. ini_set('max_execution_time', '0');
  32. $data = $request->all();
  33. $result = $this->deepseekService->chatWithReasoner($data);
  34. return $this->success($result);
  35. }
  36. /**
  37. * 音色列表
  38. *
  39. * @param Request $request
  40. * @return mixed
  41. */
  42. public function timbreList(Request $request) {
  43. $data = $request->all();
  44. $result = $this->deepseekService->timbreList($data);
  45. return $this->success($result);
  46. }
  47. // 保存段落音频
  48. public function saveParagraphAudio(Request $request) {
  49. $data = $request->all();
  50. $result = $this->deepseekService->saveParagraphAudio($data);
  51. return $this->success(['success'=>$result ? 1 : 0]);
  52. }
  53. /**
  54. * 新增合成任务
  55. *
  56. * @param Request $request
  57. * @return mixed
  58. */
  59. public function addGenerateTask(Request $request) {
  60. $data = $request->all();
  61. $result = $this->deepseekService->addGenerateTask($data);
  62. return $this->success(['success'=>$result ? 1 : 0]);
  63. }
  64. // 获取火山临时token
  65. public function setStsToken(Request $request) {
  66. $data = $request->all();
  67. $result = $this->deepseekService->setStsToken($data);
  68. return $this->success($result);
  69. }
  70. }