Przeglądaj źródła

pref: change ollama embedded api request (#6876)

tags/0.6.16
灰灰 1 rok temu
rodzic
commit
56af1a0adf
No account linked to committer's email address

+ 21
- 25
api/core/model_runtime/model_providers/ollama/text_embedding/text_embedding.py Wyświetl plik

if not endpoint_url.endswith('/'): if not endpoint_url.endswith('/'):
endpoint_url += '/' endpoint_url += '/'


endpoint_url = urljoin(endpoint_url, 'api/embeddings')
endpoint_url = urljoin(endpoint_url, 'api/embed')


# get model properties # get model properties
context_size = self._get_context_size(model, credentials) context_size = self._get_context_size(model, credentials)
else: else:
inputs.append(text) inputs.append(text)


batched_embeddings = []

for text in inputs:
# Prepare the payload for the request
payload = {
'prompt': text,
'model': model,
}

# Make the request to the OpenAI API
response = requests.post(
endpoint_url,
headers=headers,
data=json.dumps(payload),
timeout=(10, 300)
)
# Prepare the payload for the request
payload = {
'input': inputs,
'model': model,
}

# Make the request to the OpenAI API
response = requests.post(
endpoint_url,
headers=headers,
data=json.dumps(payload),
timeout=(10, 300)
)


response.raise_for_status() # Raise an exception for HTTP errors
response_data = response.json()
response.raise_for_status() # Raise an exception for HTTP errors
response_data = response.json()


# Extract embeddings and used tokens from the response
embeddings = response_data['embedding']
embedding_used_tokens = self.get_num_tokens(model, credentials, [text])
# Extract embeddings and used tokens from the response
embeddings = response_data['embeddings']
embedding_used_tokens = self.get_num_tokens(model, credentials, inputs)


used_tokens += embedding_used_tokens
batched_embeddings.append(embeddings)
used_tokens += embedding_used_tokens


# calc usage # calc usage
usage = self._calc_response_usage( usage = self._calc_response_usage(
) )


return TextEmbeddingResult( return TextEmbeddingResult(
embeddings=batched_embeddings,
embeddings=embeddings,
usage=usage, usage=usage,
model=model model=model
) )

Ładowanie…
Anuluj
Zapisz