AIModelService.php 836 B

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace App\Services;
  3. use App\Models\AiModel;
  4. use App\Http\Resources\AiModelResource;
  5. use App\Tools\RedisClusters;
  6. class AIModelService
  7. {
  8. public function getModelsById($id)
  9. {
  10. $table = AiModel::whereIn('uid', $id);
  11. $result = $table->get();
  12. return AiModelResource::collection(resource: $result);
  13. }
  14. public function getSysModels($type = null)
  15. {
  16. if (empty($type)) {
  17. $types = ['wbw', 'chat', 'summarize'];
  18. } else {
  19. $types = [$type];
  20. }
  21. $sysModels = [];
  22. foreach ($types as $key => $type) {
  23. $sysModels[$type] = $this->getModelsById(RedisClusters::get('/ai/model/system/' . $type) ?? []);
  24. }
  25. if (!empty($type)) {
  26. return $sysModels[$type];
  27. }
  28. return $sysModels;
  29. }
  30. }