DeepSeekController.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. public function timeoutTest() {
  23. // 忽略所有超时限制
  24. set_time_limit(0);
  25. ini_set('max_execution_time', '0');
  26. for ($i=1;$i<=300;$i++) {
  27. dLog('exception')->info("Time: {$i}");
  28. sleep(1);
  29. }
  30. dd('end!');
  31. }
  32. /**
  33. * 可选供应商
  34. *
  35. * @param Request $request
  36. * @return mixed
  37. */
  38. public function chatWithReasoner(Request $request) {
  39. // 忽略所有超时限制
  40. set_time_limit(0);
  41. ini_set('max_execution_time', '0');
  42. $data = $request->all();
  43. $result = $this->deepseekService->chatWithReasoner($data);
  44. return $this->success($result);
  45. }
  46. /**
  47. * 音色列表
  48. *
  49. * @param Request $request
  50. * @return mixed
  51. */
  52. public function timbreList(Request $request) {
  53. $data = $request->all();
  54. $result = $this->deepseekService->timbreList($data);
  55. return $this->success($result);
  56. }
  57. /**
  58. * 新增合成任务
  59. *
  60. * @param Request $request
  61. * @return mixed
  62. */
  63. public function addGenerateTask(Request $request) {
  64. $data = $request->all();
  65. $result = $this->deepseekService->addGenerateTask($data);
  66. return $this->success(['success'=>$result ? 1 : 0]);
  67. }
  68. // 获取火山临时token
  69. public function setStsToken(Request $request) {
  70. $data = $request->all();
  71. $result = $this->deepseekService->setStsToken($data);
  72. return $this->success($result);
  73. }
  74. }