remove semaphore logic from EmbeddingFunc(cause num of instances is already control by limit_async_func_call)
This commit is contained in:
@@ -60,14 +60,7 @@ class EmbeddingFunc:
|
|||||||
func: callable
|
func: callable
|
||||||
concurrent_limit: int = 16
|
concurrent_limit: int = 16
|
||||||
|
|
||||||
def __post_init__(self):
|
|
||||||
if self.concurrent_limit != 0:
|
|
||||||
self._semaphore = asyncio.Semaphore(self.concurrent_limit)
|
|
||||||
else:
|
|
||||||
self._semaphore = UnlimitedSemaphore()
|
|
||||||
|
|
||||||
async def __call__(self, *args, **kwargs) -> np.ndarray:
|
async def __call__(self, *args, **kwargs) -> np.ndarray:
|
||||||
async with self._semaphore:
|
|
||||||
return await self.func(*args, **kwargs)
|
return await self.func(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user