This commit is contained in:
13
src/common/tcp_connector.py
Normal file
13
src/common/tcp_connector.py
Normal file
@@ -0,0 +1,13 @@
|
||||
import ssl
|
||||
import certifi
|
||||
import aiohttp
|
||||
import asyncio
|
||||
|
||||
ssl_context = ssl.create_default_context(cafile=certifi.where())
|
||||
connector = None
|
||||
|
||||
async def get_tcp_connector():
|
||||
global connector
|
||||
if connector is None:
|
||||
connector = aiohttp.TCPConnector(ssl=ssl_context)
|
||||
return connector
|
||||
@@ -6,6 +6,7 @@ from typing import Tuple, Union
|
||||
import aiohttp
|
||||
import requests
|
||||
from src.common.logger import get_module_logger
|
||||
from src.common.tcp_connector import get_tcp_connector
|
||||
from rich.traceback import install
|
||||
|
||||
install(extra_lines=3)
|
||||
@@ -94,7 +95,7 @@ class LLMRequestOff:
|
||||
max_retries = 3
|
||||
base_wait_time = 15
|
||||
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with aiohttp.ClientSession(connector=await get_tcp_connector()) as session:
|
||||
for retry in range(max_retries):
|
||||
try:
|
||||
async with session.post(api_url, headers=headers, json=data) as response:
|
||||
|
||||
@@ -6,6 +6,7 @@ from typing import Tuple, Union, Dict, Any
|
||||
import aiohttp
|
||||
from aiohttp.client import ClientResponse
|
||||
from src.common.logger import get_module_logger
|
||||
from src.common.tcp_connector import get_tcp_connector
|
||||
import base64
|
||||
from PIL import Image
|
||||
import io
|
||||
@@ -290,7 +291,7 @@ class LLMRequest:
|
||||
# 似乎是openai流式必须要的东西,不过阿里云的qwq-plus加了这个没有影响
|
||||
if request_content["stream_mode"]:
|
||||
headers["Accept"] = "text/event-stream"
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with aiohttp.ClientSession(connector=await get_tcp_connector()) as session:
|
||||
async with session.post(
|
||||
request_content["api_url"], headers=headers, json=request_content["payload"]
|
||||
) as response:
|
||||
|
||||
Reference in New Issue
Block a user