rkljw 2 months ago
parent
commit
570f9f5c26
2 changed files with 25 additions and 5 deletions
  1. 24 4
      app/Controller/SseController.php
  2. 1 1
      config/api/collector.php

+ 24 - 4
app/Controller/SseController.php

@@ -3,16 +3,35 @@ declare(strict_types=1);
 
 namespace App\Controller;
 
+use Hyperf\Di\Annotation\Inject;
 use Hyperf\HttpServer\Contract\RequestInterface;
 use Hyperf\HttpServer\Contract\ResponseInterface;
+use Hyperf\Validation\Contract\ValidatorFactoryInterface;
 use Psr\Http\Message\ServerRequestInterface;
-
+use App\Tools\Result;
 class SseController extends AbstractController
 {
+    #[Inject]
+    protected ValidatorFactoryInterface $validationFactory;
     public function stream(RequestInterface $request, ResponseInterface $response)
     {
+        $requireData = $this->request->all();
+        var_dump("=======",$request->all(),"+++++++++",$requireData);
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'problem'=> 'required',
+            ],
+            [
+                'problem.required' => '请提出你的问题',
+            ]
+        );
+        if ($validator->fails()) {
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
           $params = [
-              "model"=>"glm-4",
+              "model"=>"glm-4v-flash",
               "messages"=>[
                   [
                       "role"=>"system",
@@ -20,13 +39,14 @@ class SseController extends AbstractController
                   ],
                   [
                       "role"=>"user",
-                      "content"=>"我是一个初级程序员,如何快速的提升自己"//$requireData['message']
+                      "content"=>$requireData['problem']//$requireData['message']
                   ]
               ],
               "stream"=>true
           ];
          $apiUrl = "https://open.bigmodel.cn/api/paas/v4/chat/completions";
-         $result= $this->callApi($apiUrl, 'POST', $params, ['Authorization: Bearer be1856920c54ac537b530d69bc2eda73.gOO2BMq9NXavzEMq']);
+         //93a716c97e7848329914efe5d036c896.0feTS9QVahSzXMD8
+         $result= $this->callApi($apiUrl, 'POST', $params, ['Authorization: Bearer 93a716c97e7848329914efe5d036c896.0feTS9QVahSzXMD8']);
           $arr =  preg_split('/\n\s*\n/', $result);
         // 开始流式传输
         $this->container->get(\Swoole\Http\Response::class)->status(200);

+ 1 - 1
config/api/collector.php

@@ -8,7 +8,7 @@ use Hyperf\HttpServer\Router\Router;
 use App\Controller\CollectorController;
 //智普测试接口
 Router::addGroup('/chat', function () {
-    Router::get('/stream', 'App\Controller\SseController@stream');
+    Router::post('/stream', 'App\Controller\SseController@stream');
     Router::get('/nyn', 'App\Controller\SseController@nyn');
 
 });