yym68686 commited on
Commit
d780861
·
1 Parent(s): cff82fa

Modify polling to execute sequentially from the first API.

Browse files
Files changed (1) hide show
  1. main.py +5 -4
main.py CHANGED
@@ -99,7 +99,7 @@ async def process_request(request: RequestModel, provider: Dict):
99
  }
100
 
101
  # 只有当相应参数存在且不为None时,才添加到payload中
102
- print("request: ", request)
103
  if request.stream is not None:
104
  payload["stream"] = request.stream
105
  if request.include_usage is not None:
@@ -134,7 +134,7 @@ class ModelRequestHandler:
134
  async def request_model(self, request: RequestModel, token: str):
135
  model_name = request.model
136
  matching_providers = self.get_matching_providers(model_name)
137
- print("matching_providers", matching_providers)
138
 
139
  if not matching_providers:
140
  raise HTTPException(status_code=404, detail="No matching model found")
@@ -146,12 +146,13 @@ class ModelRequestHandler:
146
 
147
  async def try_all_providers(self, request: RequestModel, providers: List[Dict], use_round_robin: bool):
148
  num_providers = len(providers)
149
- start_index = self.last_provider_index if use_round_robin else 0
150
 
151
  for i in range(num_providers):
152
  if use_round_robin:
153
- self.last_provider_index = (start_index + i) % num_providers
 
154
  else:
 
155
  self.last_provider_index = i
156
 
157
  provider = providers[self.last_provider_index]
 
99
  }
100
 
101
  # 只有当相应参数存在且不为None时,才添加到payload中
102
+ # print("request: ", request)
103
  if request.stream is not None:
104
  payload["stream"] = request.stream
105
  if request.include_usage is not None:
 
134
  async def request_model(self, request: RequestModel, token: str):
135
  model_name = request.model
136
  matching_providers = self.get_matching_providers(model_name)
137
+ print("matching_providers", json.dumps(matching_providers, indent=2, ensure_ascii=False))
138
 
139
  if not matching_providers:
140
  raise HTTPException(status_code=404, detail="No matching model found")
 
146
 
147
  async def try_all_providers(self, request: RequestModel, providers: List[Dict], use_round_robin: bool):
148
  num_providers = len(providers)
 
149
 
150
  for i in range(num_providers):
151
  if use_round_robin:
152
+ # 始终从第一个提供者开始轮询
153
+ self.last_provider_index = i % num_providers
154
  else:
155
+ # 非轮询模式,按顺序尝试
156
  self.last_provider_index = i
157
 
158
  provider = providers[self.last_provider_index]