Skip to content

Commit 6265f9c

Browse files
committed
these appear unused rn
1 parent cb625bd commit 6265f9c

File tree

3 files changed

+1
-67
lines changed

3 files changed

+1
-67
lines changed

lib/evagg/llm/aoai.py

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
import openai
99
from openai import AsyncAzureOpenAI, AsyncOpenAI
10-
from openai.types import CreateEmbeddingResponse
1110
from openai.types.chat import (
1211
ChatCompletionMessageParam,
1312
ChatCompletionSystemMessageParam,
@@ -204,41 +203,6 @@ async def prompt_file(
204203
user_prompt = self._load_prompt_file(user_prompt_file)
205204
return await self.prompt(user_prompt, system_prompt, params, prompt_settings)
206205

207-
async def embeddings(
208-
self, inputs: List[str], embedding_settings: Optional[Dict[str, Any]] = None
209-
) -> Dict[str, List[float]]:
210-
settings = {"model": "text-embedding-ada-002-v2", **(embedding_settings or {})}
211-
212-
embeddings = {}
213-
214-
async def _run_single_embedding(input: str) -> int:
215-
connection_errors = 0
216-
while True:
217-
try:
218-
result: CreateEmbeddingResponse = await self._client.embeddings.create(
219-
input=[input], encoding_format="float", **settings
220-
)
221-
embeddings[input] = result.data[0].embedding
222-
return result.usage.prompt_tokens
223-
except (openai.RateLimitError, openai.InternalServerError) as e:
224-
logger.warning(f"Rate limit error on embeddings: {e}")
225-
await asyncio.sleep(1)
226-
except (openai.APIConnectionError, openai.APITimeoutError):
227-
if connection_errors > 2:
228-
if hasattr(self._config, "endpoint") and self._config.endpoint.startswith("http://localhost"):
229-
logger.error("Azure OpenAI API unreachable - have failed to start a local proxy?")
230-
raise
231-
logger.warning("Connectivity error on embeddings, retrying...")
232-
connection_errors += 1
233-
await asyncio.sleep(1)
234-
235-
start_overall = time.time()
236-
tokens = await asyncio.gather(*[_run_single_embedding(input) for input in inputs])
237-
elapsed = time.time() - start_overall
238-
239-
logger.info(f"{len(inputs)} embeddings produced in {elapsed:.1f} seconds using {sum(tokens)} tokens.")
240-
return embeddings
241-
242206

243207
class OpenAICacheClient(OpenAIClient):
244208
def __init__(self, client_class: str, config: Dict[str, Any]) -> None:

lib/evagg/llm/interfaces.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Any, Dict, List, Optional, Protocol
1+
from typing import Any, Dict, Optional, Protocol
22

33

44
class IPromptClient(Protocol):
@@ -21,9 +21,3 @@ async def prompt_file(
2121
) -> str:
2222
"""Get the response from a prompt with an input file."""
2323
... # pragma: no cover
24-
25-
async def embeddings(
26-
self, inputs: List[str], embedding_settings: Optional[Dict[str, Any]] = None
27-
) -> Dict[str, List[float]]:
28-
"""Get embeddings for the given inputs."""
29-
... # pragma: no cover

test/evagg/test_llm.py

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -44,27 +44,3 @@ async def test_openai_client_prompt(mock_openai, test_file_contents) -> None:
4444
temperature=1.5,
4545
model="gpt-8",
4646
)
47-
48-
49-
@patch("lib.evagg.llm.aoai.AsyncAzureOpenAI", return_value=AsyncMock())
50-
async def test_openai_client_embeddings(mock_openai) -> None:
51-
embedding = MagicMock(data=[MagicMock(embedding=[0.4, 0.5, 0.6])], usage=MagicMock(prompt_tokens=10))
52-
mock_openai.return_value.embeddings.create.return_value = embedding
53-
54-
inputs = [f"input_{i}" for i in range(1)]
55-
client = OpenAIClient(
56-
"AsyncAzureOpenAI",
57-
{
58-
"deployment": "gpt-8",
59-
"endpoint": "https://ai",
60-
"api_key": "test",
61-
"api_version": "test",
62-
"timeout": 60,
63-
},
64-
)
65-
response = await client.embeddings(inputs)
66-
mock_openai.assert_called_once_with(azure_endpoint="https://ai", api_key="test", api_version="test", timeout=60)
67-
mock_openai.return_value.embeddings.create.assert_has_calls(
68-
[call(input=[input], encoding_format="float", model="text-embedding-ada-002-v2") for input in inputs]
69-
)
70-
assert response == {input: [0.4, 0.5, 0.6] for input in inputs}

0 commit comments

Comments
 (0)