Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .fern/metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@
"originGitCommit": "cc4f564d58fa6fbe43292b5ea6bca57aac51946b",
"originGitCommitIsDirty": true,
"invokedBy": "ci",
"requestedVersion": "7.0.3",
"requestedVersion": "7.0.4",
"ciProvider": "github",
"sdkVersion": "7.0.3"
"sdkVersion": "7.0.4"
}
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ dynamic = ["version"]

[tool.poetry]
name = "cohere"
version = "7.0.3"
version = "7.0.4"
description = ""
readme = "README.md"
authors = []
Expand Down
4 changes: 2 additions & 2 deletions src/cohere/core/client_wrapper.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@ def get_headers(self) -> typing.Dict[str, str]:
import platform

headers: typing.Dict[str, str] = {
"User-Agent": "cohere/7.0.3",
"User-Agent": "cohere/7.0.4",
"X-Fern-Language": "Python",
"X-Fern-Runtime": f"python/{platform.python_version()}",
"X-Fern-Platform": f"{platform.system().lower()}/{platform.release()}",
"X-Fern-SDK-Name": "cohere",
"X-Fern-SDK-Version": "7.0.3",
"X-Fern-SDK-Version": "7.0.4",
**(self.get_custom_headers() or {}),
}
if self._client_name is not None:
Expand Down
3 changes: 3 additions & 0 deletions src/cohere/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,9 @@ def merge_meta_field(metas: typing.List[ApiMeta]) -> ApiMeta:


def merge_embed_responses(responses: typing.List[EmbedResponse]) -> EmbedResponse:
if not responses:
raise ValueError("Cannot merge embed responses: no texts were provided to embed")

meta = merge_meta_field([response.meta for response in responses if response.meta])
response_id = ", ".join(response.id for response in responses)
texts = [
Expand Down
6 changes: 6 additions & 0 deletions tests/test_embed_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,12 @@ def test_merge_embeddings_floats(self) -> None:
)
))

def test_merge_embed_responses_empty_list_raises_value_error(self) -> None:
# An empty texts list (e.g. Client.embed(texts=[])) yields no responses;
# merge_embed_responses must raise a clear ValueError instead of IndexError.
with self.assertRaises(ValueError):
merge_embed_responses([])

def test_merge_embeddings_by_type_with_none_field_in_later_response(self) -> None:
resp1 = EmbeddingsByTypeEmbedResponse(
response_type="embeddings_by_type", id="1",
Expand Down