From 7d2c3eaf947540a650971b52c6aeb907c35f330b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:02:01 +0000 Subject: [PATCH 1/8] feat(api): update via SDK Studio (#189) --- .stats.yml | 2 +- api.md | 2 +- src/mixedbread/types/__init__.py | 2 +- .../types/embedding_create_response.py | 14 ++------------ src/mixedbread/types/rerank_response.py | 14 ++------------ src/mixedbread/types/shared/__init__.py | 1 + src/mixedbread/types/shared/usage.py | 18 ++++++++++++++++++ 7 files changed, 26 insertions(+), 27 deletions(-) create mode 100644 src/mixedbread/types/shared/usage.py diff --git a/.stats.yml b/.stats.yml index c2ca6ff0..155f8534 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml openapi_spec_hash: dbd7616a32c90fd25b32994830fb12f6 -config_hash: 20a40be2c85d83a4bb34aee53cefd856 +config_hash: f87f729f63f3b34364d1c144753b920d diff --git a/api.md b/api.md index a7d820d8..b1cf6f5a 100644 --- a/api.md +++ b/api.md @@ -1,7 +1,7 @@ # Shared Types ```python -from mixedbread.types import SearchFilter, SearchFilterCondition +from mixedbread.types import SearchFilter, SearchFilterCondition, Usage ``` # Mixedbread diff --git a/src/mixedbread/types/__init__.py b/src/mixedbread/types/__init__.py index ae8ce3a4..5d068c8e 100644 --- a/src/mixedbread/types/__init__.py +++ b/src/mixedbread/types/__init__.py @@ -2,7 +2,7 @@ from __future__ import annotations -from .shared import SearchFilter as SearchFilter, SearchFilterCondition as SearchFilterCondition +from .shared import Usage as Usage, SearchFilter as SearchFilter, SearchFilterCondition as SearchFilterCondition from .embedding import Embedding as Embedding from .file_counts import FileCounts as FileCounts from .file_object import FileObject as FileObject diff --git a/src/mixedbread/types/embedding_create_response.py b/src/mixedbread/types/embedding_create_response.py index 8f3605cb..c7374f21 100644 --- a/src/mixedbread/types/embedding_create_response.py +++ b/src/mixedbread/types/embedding_create_response.py @@ -5,20 +5,10 @@ from .._models import BaseModel from .embedding import Embedding +from .shared.usage import Usage from .multi_encoding_embedding import MultiEncodingEmbedding -__all__ = ["EmbeddingCreateResponse", "Usage"] - - -class Usage(BaseModel): - prompt_tokens: int - """The number of tokens used for the prompt""" - - total_tokens: int - """The total number of tokens used""" - - completion_tokens: Optional[int] = None - """The number of tokens used for the completion""" +__all__ = ["EmbeddingCreateResponse"] class EmbeddingCreateResponse(BaseModel): diff --git a/src/mixedbread/types/rerank_response.py b/src/mixedbread/types/rerank_response.py index 5cf151fc..1b4dd0a9 100644 --- a/src/mixedbread/types/rerank_response.py +++ b/src/mixedbread/types/rerank_response.py @@ -4,19 +4,9 @@ from typing_extensions import Literal from .._models import BaseModel +from .shared.usage import Usage -__all__ = ["RerankResponse", "Usage", "Data"] - - -class Usage(BaseModel): - prompt_tokens: int - """The number of tokens used for the prompt""" - - total_tokens: int - """The total number of tokens used""" - - completion_tokens: Optional[int] = None - """The number of tokens used for the completion""" +__all__ = ["RerankResponse", "Data"] class Data(BaseModel): diff --git a/src/mixedbread/types/shared/__init__.py b/src/mixedbread/types/shared/__init__.py index c91e740d..66d5dcf9 100644 --- a/src/mixedbread/types/shared/__init__.py +++ b/src/mixedbread/types/shared/__init__.py @@ -1,4 +1,5 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. +from .usage import Usage as Usage from .search_filter import SearchFilter as SearchFilter from .search_filter_condition import SearchFilterCondition as SearchFilterCondition diff --git a/src/mixedbread/types/shared/usage.py b/src/mixedbread/types/shared/usage.py new file mode 100644 index 00000000..eab91a6c --- /dev/null +++ b/src/mixedbread/types/shared/usage.py @@ -0,0 +1,18 @@ +# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. + +from typing import Optional + +from ..._models import BaseModel + +__all__ = ["Usage"] + + +class Usage(BaseModel): + prompt_tokens: int + """The number of tokens used for the prompt""" + + total_tokens: int + """The total number of tokens used""" + + completion_tokens: Optional[int] = None + """The number of tokens used for the completion""" From 75b9acbf7887281dc9f579e4f81caba7cc966638 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:06:17 +0000 Subject: [PATCH 2/8] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 155f8534..83cccef3 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml -openapi_spec_hash: dbd7616a32c90fd25b32994830fb12f6 +openapi_spec_hash: 4faa08fce1f48979a83ff502c9db157b config_hash: f87f729f63f3b34364d1c144753b920d From 546f79ebf6cf8c563283a0e6cc9f73a36d2306f4 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:10:08 +0000 Subject: [PATCH 3/8] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 83cccef3..9bfa71fc 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml -openapi_spec_hash: 4faa08fce1f48979a83ff502c9db157b +openapi_spec_hash: d3ab27dba9665501eb2e47d18d3a2b68 config_hash: f87f729f63f3b34364d1c144753b920d From ecc7b0ca2ef2ced5c03615aac32a3cc6e79ac162 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:20:29 +0000 Subject: [PATCH 4/8] feat(api): update via SDK Studio (#191) --- .stats.yml | 2 +- src/mixedbread/_client.py | 4 +- src/mixedbread/resources/embeddings.py | 4 +- src/mixedbread/types/client_embed_params.py | 2 +- .../types/embedding_create_params.py | 2 +- tests/api_resources/test_client.py | 40 +++++++++---------- tests/api_resources/test_embeddings.py | 16 ++++---- 7 files changed, 35 insertions(+), 35 deletions(-) diff --git a/.stats.yml b/.stats.yml index 9bfa71fc..68253575 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml -openapi_spec_hash: d3ab27dba9665501eb2e47d18d3a2b68 +openapi_spec_hash: bbf8d4c5379fa9652890792e28f97f4e config_hash: f87f729f63f3b34364d1c144753b920d diff --git a/src/mixedbread/_client.py b/src/mixedbread/_client.py index 30ff9cca..c80b3274 100644 --- a/src/mixedbread/_client.py +++ b/src/mixedbread/_client.py @@ -242,7 +242,7 @@ def embed( self, *, model: str, - input: List[str], + input: Union[str, List[str]], dimensions: Optional[int] | NotGiven = NOT_GIVEN, prompt: Optional[str] | NotGiven = NOT_GIVEN, normalized: bool | NotGiven = NOT_GIVEN, @@ -599,7 +599,7 @@ async def embed( self, *, model: str, - input: List[str], + input: Union[str, List[str]], dimensions: Optional[int] | NotGiven = NOT_GIVEN, prompt: Optional[str] | NotGiven = NOT_GIVEN, normalized: bool | NotGiven = NOT_GIVEN, diff --git a/src/mixedbread/resources/embeddings.py b/src/mixedbread/resources/embeddings.py index d7390eda..3800954d 100644 --- a/src/mixedbread/resources/embeddings.py +++ b/src/mixedbread/resources/embeddings.py @@ -51,7 +51,7 @@ def create( self, *, model: str, - input: List[str], + input: Union[str, List[str]], dimensions: Optional[int] | NotGiven = NOT_GIVEN, prompt: Optional[str] | NotGiven = NOT_GIVEN, normalized: bool | NotGiven = NOT_GIVEN, @@ -141,7 +141,7 @@ async def create( self, *, model: str, - input: List[str], + input: Union[str, List[str]], dimensions: Optional[int] | NotGiven = NOT_GIVEN, prompt: Optional[str] | NotGiven = NOT_GIVEN, normalized: bool | NotGiven = NOT_GIVEN, diff --git a/src/mixedbread/types/client_embed_params.py b/src/mixedbread/types/client_embed_params.py index ec6a6e8b..3f27c1a3 100644 --- a/src/mixedbread/types/client_embed_params.py +++ b/src/mixedbread/types/client_embed_params.py @@ -12,7 +12,7 @@ class ClientEmbedParams(TypedDict, total=False): model: Required[str] """The model to use for creating embeddings.""" - input: Required[List[str]] + input: Required[Union[str, List[str]]] """The input to create embeddings for.""" dimensions: Optional[int] diff --git a/src/mixedbread/types/embedding_create_params.py b/src/mixedbread/types/embedding_create_params.py index 534982e3..6c9b29f6 100644 --- a/src/mixedbread/types/embedding_create_params.py +++ b/src/mixedbread/types/embedding_create_params.py @@ -12,7 +12,7 @@ class EmbeddingCreateParams(TypedDict, total=False): model: Required[str] """The model to use for creating embeddings.""" - input: Required[List[str]] + input: Required[Union[str, List[str]]] """The input to create embeddings for.""" dimensions: Optional[int] diff --git a/tests/api_resources/test_client.py b/tests/api_resources/test_client.py index 1c38d8ba..2122a9f1 100644 --- a/tests/api_resources/test_client.py +++ b/tests/api_resources/test_client.py @@ -25,7 +25,7 @@ class TestClient: def test_method_embed(self, client: Mixedbread) -> None: client_ = client.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert_matches_type(EmbeddingCreateResponse, client_, path=["response"]) @@ -33,7 +33,7 @@ def test_method_embed(self, client: Mixedbread) -> None: def test_method_embed_with_all_params(self, client: Mixedbread) -> None: client_ = client.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", dimensions=768, prompt="Provide a detailed summary of the following text.", normalized=True, @@ -45,7 +45,7 @@ def test_method_embed_with_all_params(self, client: Mixedbread) -> None: def test_raw_response_embed(self, client: Mixedbread) -> None: response = client.with_raw_response.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert response.is_closed is True @@ -57,7 +57,7 @@ def test_raw_response_embed(self, client: Mixedbread) -> None: def test_streaming_response_embed(self, client: Mixedbread) -> None: with client.with_streaming_response.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) as response: assert not response.is_closed assert response.http_request.headers.get("X-Stainless-Lang") == "python" @@ -95,7 +95,7 @@ def test_streaming_response_info(self, client: Mixedbread) -> None: @parametrize def test_method_rerank(self, client: Mixedbread) -> None: client_ = client.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) assert_matches_type(RerankResponse, client_, path=["response"]) @@ -103,10 +103,10 @@ def test_method_rerank(self, client: Mixedbread) -> None: @parametrize def test_method_rerank_with_all_params(self, client: Mixedbread) -> None: client_ = client.rerank( - model="x", - query="What is mixedbread ai?", + model="mixedbread-ai/mxbai-rerank-large-v2", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], - rank_fields=["field1", "field2"], + rank_fields=["content", "title"], top_k=10, return_input=False, ) @@ -115,7 +115,7 @@ def test_method_rerank_with_all_params(self, client: Mixedbread) -> None: @parametrize def test_raw_response_rerank(self, client: Mixedbread) -> None: response = client.with_raw_response.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) @@ -127,7 +127,7 @@ def test_raw_response_rerank(self, client: Mixedbread) -> None: @parametrize def test_streaming_response_rerank(self, client: Mixedbread) -> None: with client.with_streaming_response.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) as response: assert not response.is_closed @@ -146,7 +146,7 @@ class TestAsyncClient: async def test_method_embed(self, async_client: AsyncMixedbread) -> None: client = await async_client.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert_matches_type(EmbeddingCreateResponse, client, path=["response"]) @@ -154,7 +154,7 @@ async def test_method_embed(self, async_client: AsyncMixedbread) -> None: async def test_method_embed_with_all_params(self, async_client: AsyncMixedbread) -> None: client = await async_client.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", dimensions=768, prompt="Provide a detailed summary of the following text.", normalized=True, @@ -166,7 +166,7 @@ async def test_method_embed_with_all_params(self, async_client: AsyncMixedbread) async def test_raw_response_embed(self, async_client: AsyncMixedbread) -> None: response = await async_client.with_raw_response.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert response.is_closed is True @@ -178,7 +178,7 @@ async def test_raw_response_embed(self, async_client: AsyncMixedbread) -> None: async def test_streaming_response_embed(self, async_client: AsyncMixedbread) -> None: async with async_client.with_streaming_response.embed( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) as response: assert not response.is_closed assert response.http_request.headers.get("X-Stainless-Lang") == "python" @@ -216,7 +216,7 @@ async def test_streaming_response_info(self, async_client: AsyncMixedbread) -> N @parametrize async def test_method_rerank(self, async_client: AsyncMixedbread) -> None: client = await async_client.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) assert_matches_type(RerankResponse, client, path=["response"]) @@ -224,10 +224,10 @@ async def test_method_rerank(self, async_client: AsyncMixedbread) -> None: @parametrize async def test_method_rerank_with_all_params(self, async_client: AsyncMixedbread) -> None: client = await async_client.rerank( - model="x", - query="What is mixedbread ai?", + model="mixedbread-ai/mxbai-rerank-large-v2", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], - rank_fields=["field1", "field2"], + rank_fields=["content", "title"], top_k=10, return_input=False, ) @@ -236,7 +236,7 @@ async def test_method_rerank_with_all_params(self, async_client: AsyncMixedbread @parametrize async def test_raw_response_rerank(self, async_client: AsyncMixedbread) -> None: response = await async_client.with_raw_response.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) @@ -248,7 +248,7 @@ async def test_raw_response_rerank(self, async_client: AsyncMixedbread) -> None: @parametrize async def test_streaming_response_rerank(self, async_client: AsyncMixedbread) -> None: async with async_client.with_streaming_response.rerank( - query="What is mixedbread ai?", + query="What are the key features of the Mixedbread embedding model?", input=["Document 1", "Document 2"], ) as response: assert not response.is_closed diff --git a/tests/api_resources/test_embeddings.py b/tests/api_resources/test_embeddings.py index ffe758eb..9aab6efd 100644 --- a/tests/api_resources/test_embeddings.py +++ b/tests/api_resources/test_embeddings.py @@ -21,7 +21,7 @@ class TestEmbeddings: def test_method_create(self, client: Mixedbread) -> None: embedding = client.embeddings.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert_matches_type(EmbeddingCreateResponse, embedding, path=["response"]) @@ -29,7 +29,7 @@ def test_method_create(self, client: Mixedbread) -> None: def test_method_create_with_all_params(self, client: Mixedbread) -> None: embedding = client.embeddings.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", dimensions=768, prompt="Provide a detailed summary of the following text.", normalized=True, @@ -41,7 +41,7 @@ def test_method_create_with_all_params(self, client: Mixedbread) -> None: def test_raw_response_create(self, client: Mixedbread) -> None: response = client.embeddings.with_raw_response.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert response.is_closed is True @@ -53,7 +53,7 @@ def test_raw_response_create(self, client: Mixedbread) -> None: def test_streaming_response_create(self, client: Mixedbread) -> None: with client.embeddings.with_streaming_response.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) as response: assert not response.is_closed assert response.http_request.headers.get("X-Stainless-Lang") == "python" @@ -71,7 +71,7 @@ class TestAsyncEmbeddings: async def test_method_create(self, async_client: AsyncMixedbread) -> None: embedding = await async_client.embeddings.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert_matches_type(EmbeddingCreateResponse, embedding, path=["response"]) @@ -79,7 +79,7 @@ async def test_method_create(self, async_client: AsyncMixedbread) -> None: async def test_method_create_with_all_params(self, async_client: AsyncMixedbread) -> None: embedding = await async_client.embeddings.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", dimensions=768, prompt="Provide a detailed summary of the following text.", normalized=True, @@ -91,7 +91,7 @@ async def test_method_create_with_all_params(self, async_client: AsyncMixedbread async def test_raw_response_create(self, async_client: AsyncMixedbread) -> None: response = await async_client.embeddings.with_raw_response.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) assert response.is_closed is True @@ -103,7 +103,7 @@ async def test_raw_response_create(self, async_client: AsyncMixedbread) -> None: async def test_streaming_response_create(self, async_client: AsyncMixedbread) -> None: async with async_client.embeddings.with_streaming_response.create( model="mixedbread-ai/mxbai-embed-large-v1", - input=["string"], + input="x", ) as response: assert not response.is_closed assert response.http_request.headers.get("X-Stainless-Lang") == "python" From a43b6e481f6cf07295caeb43dd172fab1a335892 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:26:21 +0000 Subject: [PATCH 5/8] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 68253575..079df7a2 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml -openapi_spec_hash: bbf8d4c5379fa9652890792e28f97f4e +openapi_spec_hash: a9df47de09efe21b0d8e0c513493940c config_hash: f87f729f63f3b34364d1c144753b920d From a2ea308d38fadb5d09edac34560bc11a96fe9f5e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:36:40 +0000 Subject: [PATCH 6/8] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 079df7a2..b46a3c09 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 32 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mixedbread%2Fmixedbread-82c2c1c322149cd73b2e8e45f475919b941752a89e74464ccecd1aee9352e9be.yml -openapi_spec_hash: a9df47de09efe21b0d8e0c513493940c +openapi_spec_hash: a47fe4cb39ee0cb74ee5888de2f0a5e1 config_hash: f87f729f63f3b34364d1c144753b920d From 1d85db180e2c005f90348abd96622c7bb51cd39b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 4 Apr 2025 10:33:58 +0000 Subject: [PATCH 7/8] chore(internal): remove trailing character (#192) --- tests/test_client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_client.py b/tests/test_client.py index 9a2b23af..990596df 100644 --- a/tests/test_client.py +++ b/tests/test_client.py @@ -1639,7 +1639,7 @@ def test_get_platform(self) -> None: import threading from mixedbread._utils import asyncify - from mixedbread._base_client import get_platform + from mixedbread._base_client import get_platform async def test_main() -> None: result = await asyncify(get_platform)() From 7464a2b1fb9dd5d84f766754a3ae91b266ce2e85 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 4 Apr 2025 10:34:19 +0000 Subject: [PATCH 8/8] release: 0.1.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 14 ++++++++++++++ README.md | 2 +- pyproject.toml | 2 +- src/mixedbread/_version.py | 2 +- 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 859ebd32..3d2ac0bd 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.0-alpha.42" + ".": "0.1.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 27e38aaf..a8baf23f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## 0.1.0 (2025-04-04) + +Full Changelog: [v0.1.0-alpha.42...v0.1.0](https://github.com/mixedbread-ai/mixedbread-python/compare/v0.1.0-alpha.42...v0.1.0) + +### Features + +* **api:** update via SDK Studio ([#189](https://github.com/mixedbread-ai/mixedbread-python/issues/189)) ([7d2c3ea](https://github.com/mixedbread-ai/mixedbread-python/commit/7d2c3eaf947540a650971b52c6aeb907c35f330b)) +* **api:** update via SDK Studio ([#191](https://github.com/mixedbread-ai/mixedbread-python/issues/191)) ([ecc7b0c](https://github.com/mixedbread-ai/mixedbread-python/commit/ecc7b0ca2ef2ced5c03615aac32a3cc6e79ac162)) + + +### Chores + +* **internal:** remove trailing character ([#192](https://github.com/mixedbread-ai/mixedbread-python/issues/192)) ([1d85db1](https://github.com/mixedbread-ai/mixedbread-python/commit/1d85db180e2c005f90348abd96622c7bb51cd39b)) + ## 0.1.0-alpha.42 (2025-04-03) Full Changelog: [v0.1.0-alpha.41...v0.1.0-alpha.42](https://github.com/mixedbread-ai/mixedbread-python/compare/v0.1.0-alpha.41...v0.1.0-alpha.42) diff --git a/README.md b/README.md index fcc0dd73..72224fc3 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The REST API documentation can be found on [mixedbread.com](https://mixedbread.c ```sh # install from PyPI -pip install --pre mixedbread +pip install mixedbread ``` ## Usage diff --git a/pyproject.toml b/pyproject.toml index 5be3f0a9..93ded3d5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "mixedbread" -version = "0.1.0-alpha.42" +version = "0.1.0" description = "The official Python library for the Mixedbread API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/mixedbread/_version.py b/src/mixedbread/_version.py index f4132283..ec180d74 100644 --- a/src/mixedbread/_version.py +++ b/src/mixedbread/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "mixedbread" -__version__ = "0.1.0-alpha.42" # x-release-please-version +__version__ = "0.1.0" # x-release-please-version