llama-stack-api 0.4.4__py3-none-any.whl → 0.5.0rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. llama_stack_api/__init__.py +175 -20
  2. llama_stack_api/agents/__init__.py +38 -0
  3. llama_stack_api/agents/api.py +52 -0
  4. llama_stack_api/agents/fastapi_routes.py +268 -0
  5. llama_stack_api/agents/models.py +181 -0
  6. llama_stack_api/common/errors.py +15 -0
  7. llama_stack_api/connectors/__init__.py +38 -0
  8. llama_stack_api/connectors/api.py +50 -0
  9. llama_stack_api/connectors/fastapi_routes.py +103 -0
  10. llama_stack_api/connectors/models.py +103 -0
  11. llama_stack_api/conversations/__init__.py +61 -0
  12. llama_stack_api/conversations/api.py +44 -0
  13. llama_stack_api/conversations/fastapi_routes.py +177 -0
  14. llama_stack_api/conversations/models.py +245 -0
  15. llama_stack_api/datasetio/__init__.py +34 -0
  16. llama_stack_api/datasetio/api.py +42 -0
  17. llama_stack_api/datasetio/fastapi_routes.py +94 -0
  18. llama_stack_api/datasetio/models.py +48 -0
  19. llama_stack_api/eval/__init__.py +55 -0
  20. llama_stack_api/eval/api.py +51 -0
  21. llama_stack_api/eval/compat.py +300 -0
  22. llama_stack_api/eval/fastapi_routes.py +126 -0
  23. llama_stack_api/eval/models.py +141 -0
  24. llama_stack_api/inference/__init__.py +207 -0
  25. llama_stack_api/inference/api.py +93 -0
  26. llama_stack_api/inference/fastapi_routes.py +243 -0
  27. llama_stack_api/inference/models.py +1035 -0
  28. llama_stack_api/models/__init__.py +47 -0
  29. llama_stack_api/models/api.py +38 -0
  30. llama_stack_api/models/fastapi_routes.py +104 -0
  31. llama_stack_api/{models.py → models/models.py} +65 -79
  32. llama_stack_api/openai_responses.py +32 -6
  33. llama_stack_api/post_training/__init__.py +73 -0
  34. llama_stack_api/post_training/api.py +36 -0
  35. llama_stack_api/post_training/fastapi_routes.py +116 -0
  36. llama_stack_api/{post_training.py → post_training/models.py} +55 -86
  37. llama_stack_api/prompts/__init__.py +47 -0
  38. llama_stack_api/prompts/api.py +44 -0
  39. llama_stack_api/prompts/fastapi_routes.py +163 -0
  40. llama_stack_api/prompts/models.py +177 -0
  41. llama_stack_api/resource.py +0 -1
  42. llama_stack_api/safety/__init__.py +37 -0
  43. llama_stack_api/safety/api.py +29 -0
  44. llama_stack_api/safety/datatypes.py +83 -0
  45. llama_stack_api/safety/fastapi_routes.py +55 -0
  46. llama_stack_api/safety/models.py +38 -0
  47. llama_stack_api/schema_utils.py +47 -4
  48. llama_stack_api/scoring/__init__.py +66 -0
  49. llama_stack_api/scoring/api.py +35 -0
  50. llama_stack_api/scoring/fastapi_routes.py +67 -0
  51. llama_stack_api/scoring/models.py +81 -0
  52. llama_stack_api/scoring_functions/__init__.py +50 -0
  53. llama_stack_api/scoring_functions/api.py +39 -0
  54. llama_stack_api/scoring_functions/fastapi_routes.py +108 -0
  55. llama_stack_api/{scoring_functions.py → scoring_functions/models.py} +67 -64
  56. llama_stack_api/shields/__init__.py +41 -0
  57. llama_stack_api/shields/api.py +39 -0
  58. llama_stack_api/shields/fastapi_routes.py +104 -0
  59. llama_stack_api/shields/models.py +74 -0
  60. llama_stack_api/validators.py +46 -0
  61. llama_stack_api/vector_io/__init__.py +88 -0
  62. llama_stack_api/vector_io/api.py +234 -0
  63. llama_stack_api/vector_io/fastapi_routes.py +447 -0
  64. llama_stack_api/{vector_io.py → vector_io/models.py} +99 -377
  65. {llama_stack_api-0.4.4.dist-info → llama_stack_api-0.5.0rc1.dist-info}/METADATA +1 -1
  66. llama_stack_api-0.5.0rc1.dist-info/RECORD +115 -0
  67. llama_stack_api/agents.py +0 -173
  68. llama_stack_api/connectors.py +0 -146
  69. llama_stack_api/conversations.py +0 -270
  70. llama_stack_api/datasetio.py +0 -55
  71. llama_stack_api/eval.py +0 -137
  72. llama_stack_api/inference.py +0 -1169
  73. llama_stack_api/prompts.py +0 -203
  74. llama_stack_api/safety.py +0 -132
  75. llama_stack_api/scoring.py +0 -93
  76. llama_stack_api/shields.py +0 -93
  77. llama_stack_api-0.4.4.dist-info/RECORD +0 -70
  78. {llama_stack_api-0.4.4.dist-info → llama_stack_api-0.5.0rc1.dist-info}/WHEEL +0 -0
  79. {llama_stack_api-0.4.4.dist-info → llama_stack_api-0.5.0rc1.dist-info}/top_level.txt +0 -0
@@ -3,20 +3,19 @@
3
3
  #
4
4
  # This source code is licensed under the terms described in the LICENSE file in
5
5
  # the root directory of this source tree.
6
- # Copyright (c) Meta Platforms, Inc. and affiliates.
7
- # All rights reserved.
8
- #
9
- # This source code is licensed under the terms described in the LICENSE file in
10
- # the root directory of this source tree.
11
- from typing import Annotated, Any, Literal, Protocol, runtime_checkable
12
6
 
13
- from fastapi import Body, Query
7
+ """Pydantic models for VectorIO API requests and responses.
8
+
9
+ This module defines the request and response models for the VectorIO API
10
+ using Pydantic with Field descriptions for OpenAPI schema generation.
11
+ """
12
+
13
+ from typing import Annotated, Any, Literal
14
+
14
15
  from pydantic import BaseModel, Field, field_validator
15
16
 
16
17
  from llama_stack_api.inference import InterleavedContent
17
- from llama_stack_api.schema_utils import json_schema_type, register_schema, webmethod
18
- from llama_stack_api.vector_stores import VectorStore
19
- from llama_stack_api.version import LLAMA_STACK_API_V1
18
+ from llama_stack_api.schema_utils import json_schema_type, register_schema
20
19
 
21
20
 
22
21
  @json_schema_type
@@ -126,7 +125,6 @@ class VectorStoreFileCounts(BaseModel):
126
125
  total: int
127
126
 
128
127
 
129
- # TODO: rename this as OpenAIVectorStore
130
128
  @json_schema_type
131
129
  class VectorStoreObject(BaseModel):
132
130
  """OpenAI Vector Store object.
@@ -353,8 +351,45 @@ register_schema(VectorStoreChunkingStrategy, name="VectorStoreChunkingStrategy")
353
351
  class SearchRankingOptions(BaseModel):
354
352
  """Options for ranking and filtering search results.
355
353
 
356
- :param ranker: (Optional) Name of the ranking algorithm to use
357
- :param score_threshold: (Optional) Minimum relevance score threshold for results
354
+ This class configures how search results are ranked and filtered. You can use algorithm-based
355
+ rerankers (weighted, RRF) or neural rerankers. Defaults from VectorStoresConfig are
356
+ used when parameters are not provided.
357
+
358
+ Examples:
359
+ # Weighted ranker with custom alpha
360
+ SearchRankingOptions(ranker="weighted", alpha=0.7)
361
+
362
+ # RRF ranker with custom impact factor
363
+ SearchRankingOptions(ranker="rrf", impact_factor=50.0)
364
+
365
+ # Use config defaults (just specify ranker type)
366
+ SearchRankingOptions(ranker="weighted") # Uses alpha from VectorStoresConfig
367
+
368
+ # Score threshold filtering
369
+ SearchRankingOptions(ranker="weighted", score_threshold=0.5)
370
+
371
+ :param ranker: (Optional) Name of the ranking algorithm to use. Supported values:
372
+ - "weighted": Weighted combination of vector and keyword scores
373
+ - "rrf": Reciprocal Rank Fusion algorithm
374
+ - "neural": Neural reranking model (requires model parameter, Part II)
375
+ Note: For OpenAI API compatibility, any string value is accepted, but only the above values are supported.
376
+ :param score_threshold: (Optional) Minimum relevance score threshold for results. Default: 0.0
377
+ :param alpha: (Optional) Weight factor for weighted ranker (0-1).
378
+ - 0.0 = keyword only
379
+ - 0.5 = equal weight (default)
380
+ - 1.0 = vector only
381
+ Only used when ranker="weighted" and weights is not provided.
382
+ Falls back to VectorStoresConfig.chunk_retrieval_params.weighted_search_alpha if not provided.
383
+ :param impact_factor: (Optional) Impact factor (k) for RRF algorithm.
384
+ Lower values emphasize higher-ranked results. Default: 60.0 (optimal from research).
385
+ Only used when ranker="rrf".
386
+ Falls back to VectorStoresConfig.chunk_retrieval_params.rrf_impact_factor if not provided.
387
+ :param weights: (Optional) Dictionary of weights for combining different signal types.
388
+ Keys can be "vector", "keyword", "neural". Values should sum to 1.0.
389
+ Used when combining algorithm-based reranking with neural reranking (Part II).
390
+ Example: {"vector": 0.3, "keyword": 0.3, "neural": 0.4}
391
+ :param model: (Optional) Model identifier for neural reranker (e.g., "vllm/Qwen3-Reranker-0.6B").
392
+ Required when ranker="neural" or when weights contains "neural" (Part II).
358
393
  """
359
394
 
360
395
  ranker: str | None = None
@@ -362,6 +397,25 @@ class SearchRankingOptions(BaseModel):
362
397
  # we don't guarantee that the score is between 0 and 1, so will leave this unconstrained
363
398
  # and let the provider handle it
364
399
  score_threshold: float | None = Field(default=0.0)
400
+ alpha: float | None = Field(default=None, ge=0.0, le=1.0, description="Weight factor for weighted ranker")
401
+ impact_factor: float | None = Field(default=None, gt=0.0, description="Impact factor for RRF algorithm")
402
+ weights: dict[str, float] | None = Field(
403
+ default=None,
404
+ description="Weights for combining vector, keyword, and neural scores. Keys: 'vector', 'keyword', 'neural'",
405
+ )
406
+ model: str | None = Field(default=None, description="Model identifier for neural reranker")
407
+
408
+ @field_validator("weights")
409
+ @classmethod
410
+ def validate_weights(cls, v: dict[str, float] | None) -> dict[str, float] | None:
411
+ if v is None:
412
+ return v
413
+ allowed_keys = {"vector", "keyword", "neural"}
414
+ if not all(key in allowed_keys for key in v.keys()):
415
+ raise ValueError(f"weights keys must be from {allowed_keys}")
416
+ if abs(sum(v.values()) - 1.0) > 0.001:
417
+ raise ValueError("weights must sum to 1.0")
418
+ return v
365
419
 
366
420
 
367
421
  @json_schema_type
@@ -575,367 +629,35 @@ class OpenAICreateVectorStoreFileBatchRequestWithExtraBody(BaseModel, extra="all
575
629
  chunking_strategy: VectorStoreChunkingStrategy | None = None
576
630
 
577
631
 
578
- class VectorStoreTable(Protocol):
579
- def get_vector_store(self, vector_store_id: str) -> VectorStore | None: ...
580
-
581
-
582
- @runtime_checkable
583
- class VectorIO(Protocol):
584
- vector_store_table: VectorStoreTable | None = None
585
-
586
- # this will just block now until chunks are inserted, but it should
587
- # probably return a Job instance which can be polled for completion
588
- # TODO: rename vector_store_id to vector_store_id once Stainless is working
589
- @webmethod(route="/vector-io/insert", method="POST", level=LLAMA_STACK_API_V1)
590
- async def insert_chunks(
591
- self,
592
- vector_store_id: str,
593
- chunks: list[EmbeddedChunk],
594
- ttl_seconds: int | None = None,
595
- ) -> None:
596
- """Insert embedded chunks into a vector database.
597
-
598
- :param vector_store_id: The identifier of the vector database to insert the chunks into.
599
- :param chunks: The embedded chunks to insert. Each `EmbeddedChunk` contains the content, metadata,
600
- and embedding vector ready for storage.
601
- :param ttl_seconds: The time to live of the chunks.
602
- """
603
- ...
604
-
605
- # TODO: rename vector_store_id to vector_store_id once Stainless is working
606
- @webmethod(route="/vector-io/query", method="POST", level=LLAMA_STACK_API_V1)
607
- async def query_chunks(
608
- self,
609
- vector_store_id: str,
610
- query: InterleavedContent,
611
- params: dict[str, Any] | None = None,
612
- ) -> QueryChunksResponse:
613
- """Query chunks from a vector database.
614
-
615
- :param vector_store_id: The identifier of the vector database to query.
616
- :param query: The query to search for.
617
- :param params: The parameters of the query.
618
- :returns: A QueryChunksResponse.
619
- """
620
- ...
621
-
622
- # OpenAI Vector Stores API endpoints
623
- @webmethod(route="/vector_stores", method="POST", level=LLAMA_STACK_API_V1)
624
- async def openai_create_vector_store(
625
- self,
626
- params: Annotated[OpenAICreateVectorStoreRequestWithExtraBody, Body(...)],
627
- ) -> VectorStoreObject:
628
- """Creates a vector store.
629
-
630
- Generate an OpenAI-compatible vector store with the given parameters.
631
- :returns: A VectorStoreObject representing the created vector store.
632
- """
633
- ...
634
-
635
- @webmethod(route="/vector_stores", method="GET", level=LLAMA_STACK_API_V1)
636
- async def openai_list_vector_stores(
637
- self,
638
- limit: int | None = 20,
639
- order: str | None = "desc",
640
- after: str | None = None,
641
- before: str | None = None,
642
- ) -> VectorStoreListResponse:
643
- """Returns a list of vector stores.
644
-
645
- :param limit: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
646
- :param order: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.
647
- :param after: A cursor for use in pagination. `after` is an object ID that defines your place in the list.
648
- :param before: A cursor for use in pagination. `before` is an object ID that defines your place in the list.
649
- :returns: A VectorStoreListResponse containing the list of vector stores.
650
- """
651
- ...
652
-
653
- @webmethod(route="/vector_stores/{vector_store_id}", method="GET", level=LLAMA_STACK_API_V1)
654
- async def openai_retrieve_vector_store(
655
- self,
656
- vector_store_id: str,
657
- ) -> VectorStoreObject:
658
- """Retrieves a vector store.
659
-
660
- :param vector_store_id: The ID of the vector store to retrieve.
661
- :returns: A VectorStoreObject representing the vector store.
662
- """
663
- ...
664
-
665
- @webmethod(
666
- route="/vector_stores/{vector_store_id}",
667
- method="POST",
668
- level=LLAMA_STACK_API_V1,
669
- )
670
- async def openai_update_vector_store(
671
- self,
672
- vector_store_id: str,
673
- name: str | None = None,
674
- expires_after: dict[str, Any] | None = None,
675
- metadata: dict[str, Any] | None = None,
676
- ) -> VectorStoreObject:
677
- """Updates a vector store.
678
-
679
- :param vector_store_id: The ID of the vector store to update.
680
- :param name: The name of the vector store.
681
- :param expires_after: The expiration policy for a vector store.
682
- :param metadata: Set of 16 key-value pairs that can be attached to an object.
683
- :returns: A VectorStoreObject representing the updated vector store.
684
- """
685
- ...
686
-
687
- @webmethod(
688
- route="/vector_stores/{vector_store_id}",
689
- method="DELETE",
690
- level=LLAMA_STACK_API_V1,
691
- )
692
- async def openai_delete_vector_store(
693
- self,
694
- vector_store_id: str,
695
- ) -> VectorStoreDeleteResponse:
696
- """Delete a vector store.
697
-
698
- :param vector_store_id: The ID of the vector store to delete.
699
- :returns: A VectorStoreDeleteResponse indicating the deletion status.
700
- """
701
- ...
702
-
703
- @webmethod(
704
- route="/vector_stores/{vector_store_id}/search",
705
- method="POST",
706
- level=LLAMA_STACK_API_V1,
707
- )
708
- async def openai_search_vector_store(
709
- self,
710
- vector_store_id: str,
711
- query: str | list[str],
712
- filters: dict[str, Any] | None = None,
713
- max_num_results: int | None = 10,
714
- ranking_options: SearchRankingOptions | None = None,
715
- rewrite_query: bool | None = False,
716
- search_mode: (
717
- str | None
718
- ) = "vector", # Using str instead of Literal due to OpenAPI schema generator limitations
719
- ) -> VectorStoreSearchResponsePage:
720
- """Search for chunks in a vector store.
721
-
722
- Searches a vector store for relevant chunks based on a query and optional file attribute filters.
723
-
724
- :param vector_store_id: The ID of the vector store to search.
725
- :param query: The query string or array for performing the search.
726
- :param filters: Filters based on file attributes to narrow the search results.
727
- :param max_num_results: Maximum number of results to return (1 to 50 inclusive, default 10).
728
- :param ranking_options: Ranking options for fine-tuning the search results.
729
- :param rewrite_query: Whether to rewrite the natural language query for vector search (default false)
730
- :param search_mode: The search mode to use - "keyword", "vector", or "hybrid" (default "vector")
731
- :returns: A VectorStoreSearchResponse containing the search results.
732
- """
733
- ...
734
-
735
- @webmethod(
736
- route="/vector_stores/{vector_store_id}/files",
737
- method="POST",
738
- level=LLAMA_STACK_API_V1,
739
- )
740
- async def openai_attach_file_to_vector_store(
741
- self,
742
- vector_store_id: str,
743
- file_id: str,
744
- attributes: dict[str, Any] | None = None,
745
- chunking_strategy: VectorStoreChunkingStrategy | None = None,
746
- ) -> VectorStoreFileObject:
747
- """Attach a file to a vector store.
748
-
749
- :param vector_store_id: The ID of the vector store to attach the file to.
750
- :param file_id: The ID of the file to attach to the vector store.
751
- :param attributes: The key-value attributes stored with the file, which can be used for filtering.
752
- :param chunking_strategy: The chunking strategy to use for the file.
753
- :returns: A VectorStoreFileObject representing the attached file.
754
- """
755
- ...
756
-
757
- @webmethod(
758
- route="/vector_stores/{vector_store_id}/files",
759
- method="GET",
760
- level=LLAMA_STACK_API_V1,
761
- )
762
- async def openai_list_files_in_vector_store(
763
- self,
764
- vector_store_id: str,
765
- limit: int | None = 20,
766
- order: str | None = "desc",
767
- after: str | None = None,
768
- before: str | None = None,
769
- filter: VectorStoreFileStatus | None = None,
770
- ) -> VectorStoreListFilesResponse:
771
- """List files in a vector store.
772
-
773
- :param vector_store_id: The ID of the vector store to list files from.
774
- :param limit: (Optional) A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
775
- :param order: (Optional) Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.
776
- :param after: (Optional) A cursor for use in pagination. `after` is an object ID that defines your place in the list.
777
- :param before: (Optional) A cursor for use in pagination. `before` is an object ID that defines your place in the list.
778
- :param filter: (Optional) Filter by file status to only return files with the specified status.
779
- :returns: A VectorStoreListFilesResponse containing the list of files.
780
- """
781
- ...
782
-
783
- @webmethod(
784
- route="/vector_stores/{vector_store_id}/files/{file_id}",
785
- method="GET",
786
- level=LLAMA_STACK_API_V1,
787
- )
788
- async def openai_retrieve_vector_store_file(
789
- self,
790
- vector_store_id: str,
791
- file_id: str,
792
- ) -> VectorStoreFileObject:
793
- """Retrieves a vector store file.
794
-
795
- :param vector_store_id: The ID of the vector store containing the file to retrieve.
796
- :param file_id: The ID of the file to retrieve.
797
- :returns: A VectorStoreFileObject representing the file.
798
- """
799
- ...
800
-
801
- @webmethod(
802
- route="/vector_stores/{vector_store_id}/files/{file_id}/content",
803
- method="GET",
804
- level=LLAMA_STACK_API_V1,
805
- )
806
- async def openai_retrieve_vector_store_file_contents(
807
- self,
808
- vector_store_id: str,
809
- file_id: str,
810
- include_embeddings: Annotated[bool | None, Query()] = False,
811
- include_metadata: Annotated[bool | None, Query()] = False,
812
- ) -> VectorStoreFileContentResponse:
813
- """Retrieves the contents of a vector store file.
814
-
815
- :param vector_store_id: The ID of the vector store containing the file to retrieve.
816
- :param file_id: The ID of the file to retrieve.
817
- :param include_embeddings: Whether to include embedding vectors in the response.
818
- :param include_metadata: Whether to include chunk metadata in the response.
819
- :returns: File contents, optionally with embeddings and metadata based on query parameters.
820
- """
821
- ...
822
-
823
- @webmethod(
824
- route="/vector_stores/{vector_store_id}/files/{file_id}",
825
- method="POST",
826
- level=LLAMA_STACK_API_V1,
827
- )
828
- async def openai_update_vector_store_file(
829
- self,
830
- vector_store_id: str,
831
- file_id: str,
832
- attributes: dict[str, Any],
833
- ) -> VectorStoreFileObject:
834
- """Updates a vector store file.
835
-
836
- :param vector_store_id: The ID of the vector store containing the file to update.
837
- :param file_id: The ID of the file to update.
838
- :param attributes: The updated key-value attributes to store with the file.
839
- :returns: A VectorStoreFileObject representing the updated file.
840
- """
841
- ...
842
-
843
- @webmethod(
844
- route="/vector_stores/{vector_store_id}/files/{file_id}",
845
- method="DELETE",
846
- level=LLAMA_STACK_API_V1,
847
- )
848
- async def openai_delete_vector_store_file(
849
- self,
850
- vector_store_id: str,
851
- file_id: str,
852
- ) -> VectorStoreFileDeleteResponse:
853
- """Delete a vector store file.
854
-
855
- :param vector_store_id: The ID of the vector store containing the file to delete.
856
- :param file_id: The ID of the file to delete.
857
- :returns: A VectorStoreFileDeleteResponse indicating the deletion status.
858
- """
859
- ...
860
-
861
- @webmethod(
862
- route="/vector_stores/{vector_store_id}/file_batches",
863
- method="POST",
864
- level=LLAMA_STACK_API_V1,
865
- )
866
- async def openai_create_vector_store_file_batch(
867
- self,
868
- vector_store_id: str,
869
- params: Annotated[OpenAICreateVectorStoreFileBatchRequestWithExtraBody, Body(...)],
870
- ) -> VectorStoreFileBatchObject:
871
- """Create a vector store file batch.
872
-
873
- Generate an OpenAI-compatible vector store file batch for the given vector store.
874
- :param vector_store_id: The ID of the vector store to create the file batch for.
875
- :returns: A VectorStoreFileBatchObject representing the created file batch.
876
- """
877
- ...
878
-
879
- @webmethod(
880
- route="/vector_stores/{vector_store_id}/file_batches/{batch_id}",
881
- method="GET",
882
- level=LLAMA_STACK_API_V1,
883
- )
884
- async def openai_retrieve_vector_store_file_batch(
885
- self,
886
- batch_id: str,
887
- vector_store_id: str,
888
- ) -> VectorStoreFileBatchObject:
889
- """Retrieve a vector store file batch.
890
-
891
- :param batch_id: The ID of the file batch to retrieve.
892
- :param vector_store_id: The ID of the vector store containing the file batch.
893
- :returns: A VectorStoreFileBatchObject representing the file batch.
894
- """
895
- ...
896
-
897
- @webmethod(
898
- route="/vector_stores/{vector_store_id}/file_batches/{batch_id}/files",
899
- method="GET",
900
- level=LLAMA_STACK_API_V1,
901
- )
902
- async def openai_list_files_in_vector_store_file_batch(
903
- self,
904
- batch_id: str,
905
- vector_store_id: str,
906
- after: str | None = None,
907
- before: str | None = None,
908
- filter: str | None = None,
909
- limit: int | None = 20,
910
- order: str | None = "desc",
911
- ) -> VectorStoreFilesListInBatchResponse:
912
- """Returns a list of vector store files in a batch.
913
-
914
- :param batch_id: The ID of the file batch to list files from.
915
- :param vector_store_id: The ID of the vector store containing the file batch.
916
- :param after: A cursor for use in pagination. `after` is an object ID that defines your place in the list.
917
- :param before: A cursor for use in pagination. `before` is an object ID that defines your place in the list.
918
- :param filter: Filter by file status. One of in_progress, completed, failed, cancelled.
919
- :param limit: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
920
- :param order: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.
921
- :returns: A VectorStoreFilesListInBatchResponse containing the list of files in the batch.
922
- """
923
- ...
924
-
925
- @webmethod(
926
- route="/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel",
927
- method="POST",
928
- level=LLAMA_STACK_API_V1,
929
- )
930
- async def openai_cancel_vector_store_file_batch(
931
- self,
932
- batch_id: str,
933
- vector_store_id: str,
934
- ) -> VectorStoreFileBatchObject:
935
- """Cancels a vector store file batch.
936
-
937
- :param batch_id: The ID of the file batch to cancel.
938
- :param vector_store_id: The ID of the vector store containing the file batch.
939
- :returns: A VectorStoreFileBatchObject representing the cancelled file batch.
940
- """
941
- ...
632
+ __all__ = [
633
+ "Chunk",
634
+ "ChunkMetadata",
635
+ "EmbeddedChunk",
636
+ "OpenAICreateVectorStoreFileBatchRequestWithExtraBody",
637
+ "OpenAICreateVectorStoreRequestWithExtraBody",
638
+ "QueryChunksResponse",
639
+ "SearchRankingOptions",
640
+ "VectorStoreChunkingStrategy",
641
+ "VectorStoreChunkingStrategyAuto",
642
+ "VectorStoreChunkingStrategyStatic",
643
+ "VectorStoreChunkingStrategyStaticConfig",
644
+ "VectorStoreContent",
645
+ "VectorStoreCreateRequest",
646
+ "VectorStoreDeleteResponse",
647
+ "VectorStoreFileAttributes",
648
+ "VectorStoreFileBatchObject",
649
+ "VectorStoreFileContentResponse",
650
+ "VectorStoreFileCounts",
651
+ "VectorStoreFileDeleteResponse",
652
+ "VectorStoreFileLastError",
653
+ "VectorStoreFileObject",
654
+ "VectorStoreFileStatus",
655
+ "VectorStoreFilesListInBatchResponse",
656
+ "VectorStoreListFilesResponse",
657
+ "VectorStoreListResponse",
658
+ "VectorStoreModifyRequest",
659
+ "VectorStoreObject",
660
+ "VectorStoreSearchRequest",
661
+ "VectorStoreSearchResponse",
662
+ "VectorStoreSearchResponsePage",
663
+ ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: llama-stack-api
3
- Version: 0.4.4
3
+ Version: 0.5.0rc1
4
4
  Summary: API and Provider specifications for Llama Stack - lightweight package with protocol definitions and provider specs
5
5
  Author-email: Meta Llama <llama-oss@meta.com>
6
6
  License: MIT
@@ -0,0 +1,115 @@
1
+ llama_stack_api/__init__.py,sha256=R8tjqABkEoAwPdW4ywbfGk9We3ZcFjy9FWD6MM9ejm8,32103
2
+ llama_stack_api/datatypes.py,sha256=S7qOix_CBofuCEU6Gmm9qogZnnIO-WlN1kfO3D4Xlnc,12590
3
+ llama_stack_api/openai_responses.py,sha256=PCY0qcji0bGWkuHlZghv4QHd2p-5ADZbOYQgScGxPxg,55142
4
+ llama_stack_api/rag_tool.py,sha256=EtfHzPaGjxutdbJ3Ymx6QLtzBNHfCM6W6UGZ9TaV7UU,5695
5
+ llama_stack_api/resource.py,sha256=Vg6U4l4Hb_24A1RxAzRdPVUbeJC9Lwjavclk24cb13s,1060
6
+ llama_stack_api/router_utils.py,sha256=ylbRZ16gylyFCCHvS-B9cFpl9E1yRsYL8YlsuIFGP8Y,6949
7
+ llama_stack_api/schema_utils.py,sha256=oFihwky1mLhZvXyYJB2f0-htWKMwNitC70A1T03tW7U,9197
8
+ llama_stack_api/tools.py,sha256=eCyZx806VfpBJgsuJF9R3urA8ljF3g0kLapNpx9YRzY,7518
9
+ llama_stack_api/validators.py,sha256=kZDJzZz1e2G0qePHA-CyzNEfmUTY5qAR-WhdoX7f9ZI,1534
10
+ llama_stack_api/vector_stores.py,sha256=mILSO3k2X-Hg4G3YEdq54fKAenCuAzRAXqpNg-_D_Ng,1832
11
+ llama_stack_api/version.py,sha256=V3jdW3iFPdfOt4jWzJA-di7v0zHLYsn11hNtRzkY7uQ,297
12
+ llama_stack_api/admin/__init__.py,sha256=VnJn9fbk-dFkRrm1P5UWlAOcZDA2jf6dx9W5nt-WgOY,1049
13
+ llama_stack_api/admin/api.py,sha256=m14f4iBUJf-G0qITj66o-TFKCSUiD9U12XRnZ1Slr_w,1961
14
+ llama_stack_api/admin/fastapi_routes.py,sha256=3CPWhB86UMlYl3pQ0ZkbF5FLIKIzG2I61esXavoGEjY,3739
15
+ llama_stack_api/admin/models.py,sha256=aoDiI1mtM_XemHwqRFFwiVD64LbenXiYU-QK52IJDQU,3932
16
+ llama_stack_api/agents/__init__.py,sha256=w7iaXVSxpzwYhqqRyX6PVdWtJhlBdws1i_c3sq0HQKo,1040
17
+ llama_stack_api/agents/api.py,sha256=d4b9K_6RXhqjityEm_IYggtz5Q_vAgrtF7yB1paKoQ0,1422
18
+ llama_stack_api/agents/fastapi_routes.py,sha256=7kIbRD0QPqO8GjQluuWM9ZqyDwmvAYlIh4vg0UL_UZA,9382
19
+ llama_stack_api/agents/models.py,sha256=IRJ3I5WWNBfzsJFLylVrF-RqmAL9GgsFbbsVLKU9P5o,6704
20
+ llama_stack_api/batches/__init__.py,sha256=vnHvv8mzJnFlCGa3V-lTiC0k2mVPDLOGZTqgUDovwKg,999
21
+ llama_stack_api/batches/api.py,sha256=49aBQJPOB-x6ohKVWwJ7SORmfm9QSsWak7OBE6L0cMM,1416
22
+ llama_stack_api/batches/fastapi_routes.py,sha256=1b0eSB2Wb2K6gvrhpBFTexsOpxuVU1urgfIOnwxx1fc,3864
23
+ llama_stack_api/batches/models.py,sha256=Dv9cHaaCqaLi_g5wIkKoy-Mn282Gqh711G2swb5ufGM,2692
24
+ llama_stack_api/benchmarks/__init__.py,sha256=_1Vs5xcZb179BxRjTv7OUVL1yvUdzWL92Bsx1aXYMSU,1119
25
+ llama_stack_api/benchmarks/api.py,sha256=j0zaRRBCdJS0XSq5dMthK1nUhiRqzPsJaHkQF61KlFc,933
26
+ llama_stack_api/benchmarks/fastapi_routes.py,sha256=_ZQ74esmXQRC8dbCb3vypT4z-7KdNoouDDH5T2LmD_c,3560
27
+ llama_stack_api/benchmarks/models.py,sha256=h5fWO3KUTnoFzLeIB_lYEVtcgw3D53Rx44WPHE0M7is,3644
28
+ llama_stack_api/common/__init__.py,sha256=vUvqRS2CXhASaFzYVspRYa5q8usSCzjKUlZhzNLuiKg,200
29
+ llama_stack_api/common/content_types.py,sha256=lwc4VlPKWpRSTBO_U1MHdyItmQUzyNAqoaV9g3wKzF4,2693
30
+ llama_stack_api/common/errors.py,sha256=w5NltoeSATNBWzUBsgJ8jWeXERNGuELaf8wv5uxeIDU,4371
31
+ llama_stack_api/common/job_types.py,sha256=1ifNdcNPqWPWw64R58zkhAnVWCj7oYg3utImbvf4NIc,1031
32
+ llama_stack_api/common/responses.py,sha256=qhwUdKKYzIhnlPPIah36rN3vVgMXEld3kS14XjtwFC0,2505
33
+ llama_stack_api/common/training_types.py,sha256=47eJdnLGfFEesnzRLYr0wysolfql7jpGz7Uh8X-hEec,1468
34
+ llama_stack_api/common/type_system.py,sha256=hTfEKuCXU16X0dBNWbzydhAMgKpPVm6lMM6L28gc9gw,3374
35
+ llama_stack_api/connectors/__init__.py,sha256=7M3ZWEN8eXXxhH1cRUKRVtepACGQXNzLkWw2U6uviKk,903
36
+ llama_stack_api/connectors/api.py,sha256=hzZ8a8AIyyyBahGnotfhfDNkUucRUHgJ0v5NxyLDW8s,1356
37
+ llama_stack_api/connectors/fastapi_routes.py,sha256=o3R7NK81ULByOqsTIEfwWIsHrohIy40uwXqQNptQS7U,3874
38
+ llama_stack_api/connectors/models.py,sha256=3InAcmmZnpvWtoTHMJFqsHHIco2ZoPhJJTjF-erb5sU,2754
39
+ llama_stack_api/conversations/__init__.py,sha256=KRghAeeJz2f42x7fEunYvpTPooFLL0btrulN4Q7a_-4,1649
40
+ llama_stack_api/conversations/api.py,sha256=bzYXAVSO6QJ7UduL5UczDxzmCbwLHgKsLEhmDSIuooQ,1564
41
+ llama_stack_api/conversations/fastapi_routes.py,sha256=AS6RSryKEOaFHwh2z1ui4cIHYcBzj6tLSyRE7FY9dWo,6783
42
+ llama_stack_api/conversations/models.py,sha256=g_wnYzC4u_SCFU_BIcUn0_D3WWjjg9H0X-M1kcy_nnQ,8542
43
+ llama_stack_api/datasetio/__init__.py,sha256=i5sdFwDqmWoQt2t7AhhQZ0MNodz2iE6jFelUwfxTWfQ,868
44
+ llama_stack_api/datasetio/api.py,sha256=TjIRSt3Hi03CjzTmgVNLzSCROs3sGqWQ6NXw7mSfVW0,1245
45
+ llama_stack_api/datasetio/fastapi_routes.py,sha256=KMlsYckWepRi82vF_uj_ix38QDzjdq5yNls3QnppVa8,3106
46
+ llama_stack_api/datasetio/models.py,sha256=P_MOFvRLyjpYx4_mdHBjj58JgnpD9TkV5I6OsKc0y18,1459
47
+ llama_stack_api/datasets/__init__.py,sha256=Cy5e0m2kU0rCyRcizrEC60gP1BEdD65-XFBvcCEpRWo,1436
48
+ llama_stack_api/datasets/api.py,sha256=DRJAwf8ZYjwVcYoE0pbHZGDHnHsrQJQiVcljvE9qkLc,1046
49
+ llama_stack_api/datasets/fastapi_routes.py,sha256=_F_-nnXeYwo8c5nFAEw7z3b8WPhSnGN_Uy61Cxv1F9A,3096
50
+ llama_stack_api/datasets/models.py,sha256=-Pkz8nD7se10Z_JzSKuRRwY-vcwAwU6UhWSajwfem_U,4648
51
+ llama_stack_api/eval/__init__.py,sha256=PQ9uLEaukjlmYspyW6jMrNn7vAo3BDPSgdWd_hFR0WI,1343
52
+ llama_stack_api/eval/api.py,sha256=HHeEdsmGRx0bMNhqPT9v1TH_by0rXwTSejuhcwb4qY4,1286
53
+ llama_stack_api/eval/compat.py,sha256=Thz3Ot76Snb3MqBh7ZJ42E7SLAJIMEKYwOyDarOfAhs,10370
54
+ llama_stack_api/eval/fastapi_routes.py,sha256=0eHdWNACX_1ICKRLHQpgA44mr89e9ILUxggplZ-V648,4126
55
+ llama_stack_api/eval/models.py,sha256=c3no6NzFXoKJV3uxbgXUFLwSE2ZcxcnTewwCjmNwDjI,5142
56
+ llama_stack_api/file_processors/__init__.py,sha256=s9H1EQdDPm5MAmZiZDQbAgY0XXsdo10Bw3WlDu390B4,766
57
+ llama_stack_api/file_processors/api.py,sha256=MxrxuEDjTaqEdMu5kxMuAwwaGZy3yiAFku7VtORdWjk,2775
58
+ llama_stack_api/file_processors/fastapi_routes.py,sha256=NT1D_goFVmtAXdurOjY2ctgi6aAr4nHtgplz2Nhg5cg,2925
59
+ llama_stack_api/file_processors/models.py,sha256=a6_evBoh3PEZVrxJ1lDkWKUy5bZkjCHbydiyMZB9E50,1366
60
+ llama_stack_api/files/__init__.py,sha256=7ncmkC_-3WKYu3FIseApV5w4ER7PHyG1M2E6pb2mduo,839
61
+ llama_stack_api/files/api.py,sha256=79tc1hRe78AE_QA_BdOfpNpjfYTzLVYg6h4dXNkKu3I,1258
62
+ llama_stack_api/files/fastapi_routes.py,sha256=-FadxkQZKXUlYSJtmfZCXCBExAG9HBHttT-j_i0d8Ig,4177
63
+ llama_stack_api/files/models.py,sha256=Uz-gPoMZSV8P7eVHdKSDGMTE-B3dFUdM3BXU9s0PdGY,4239
64
+ llama_stack_api/inference/__init__.py,sha256=u7Z1BV1mx8oKBbQaqUzRvBDxkmHZBQ5t7GVnos8rwBg,6120
65
+ llama_stack_api/inference/api.py,sha256=Oy06kIRa3Piyxw37PdKfwWunaCpc5iCqyfvo1FgBLHo,3310
66
+ llama_stack_api/inference/fastapi_routes.py,sha256=N8xjMlyVGbfIrhioSrwJ33mjTpjXYJQsbJMgobqp4AA,9398
67
+ llama_stack_api/inference/models.py,sha256=VQ0tjgDOQr4Uh3xjxKQOIixlbrTebaRBRpVLBwzcPO4,42555
68
+ llama_stack_api/inspect_api/__init__.py,sha256=0jRDcUhEmVtXqK3BDX8I2qtcN0S4lFAAcLI-dMpGQ-w,861
69
+ llama_stack_api/inspect_api/api.py,sha256=XkdM7jJ3_UlEIE4woEVi5mO2O1aNn9_FPtb18NTnWSM,726
70
+ llama_stack_api/inspect_api/fastapi_routes.py,sha256=I7R8roy6einYDzrPN8wNjrRokpoSNZi9zrtmLHS1vDw,2575
71
+ llama_stack_api/inspect_api/models.py,sha256=EW69EHkOG8i0GS8KW8Kz6WaPZV74hzwad8dGXWrrKhs,683
72
+ llama_stack_api/internal/__init__.py,sha256=hZiF7mONpu54guvMUTW9XpfkETUO55u6hqYOYkz8Bt0,307
73
+ llama_stack_api/internal/kvstore.py,sha256=mgNJz6r8_ju3I3JT2Pz5fSX_9DLv_OupsS2NnJe3usY,833
74
+ llama_stack_api/internal/sqlstore.py,sha256=FBIQhG7VOVMMSTe24uMigfxEWXnarY0hzx9HjrNXVnI,2262
75
+ llama_stack_api/models/__init__.py,sha256=Vqrq8RejyuTtwLjZkq2YvrpYKQceH3IDAC0sw8Lp7k8,1122
76
+ llama_stack_api/models/api.py,sha256=8-JzLJekwpt2kD-g-WAMOwxzqgpLxnZL6xsnObe1uTo,1107
77
+ llama_stack_api/models/fastapi_routes.py,sha256=7AKrmxT96EmERV7UkKfCSEGvFyns22sV86CDvDWKlAw,3041
78
+ llama_stack_api/models/models.py,sha256=sVj8Arzg5s_tKwjveWYVA2xGpBZ3erMh8qd0HOUdqm4,4921
79
+ llama_stack_api/post_training/__init__.py,sha256=D5Ulxd4cm0X98G-xugRwotqgCCnn6Hl9vKkDLtroZxo,1951
80
+ llama_stack_api/post_training/api.py,sha256=qzNNu-edYtbj8GsQJOSp8qC9YJH7PjGG3N1b2xpTlv0,1245
81
+ llama_stack_api/post_training/fastapi_routes.py,sha256=bR9VdwNWBK3Kq4zGJVUY528oukQTPLB4sPj7AgoZ1qA,4402
82
+ llama_stack_api/post_training/models.py,sha256=cH-hr2ECzLs45vKTwUEwq5VYJOUkvUnVnZY-NHy2LHs,11887
83
+ llama_stack_api/prompts/__init__.py,sha256=vgYZY9TqcvG9IxRbiA-_D1g5UfEcqXLs2SJJluvDTOs,1218
84
+ llama_stack_api/prompts/api.py,sha256=u-gbDseSxycNtY0f5J9AqiFO1om5JcROGV2CpeOC3PM,1370
85
+ llama_stack_api/prompts/fastapi_routes.py,sha256=ZAwSeDRvk2VdTJn5d_erWZNi0VhLjxR6Rs_oRqKRKhw,5429
86
+ llama_stack_api/prompts/models.py,sha256=KVm8qBKtQp-9-r1_PtbJZl3mq896mjH3zbhXShhiSRs,6355
87
+ llama_stack_api/providers/__init__.py,sha256=a_187ghsdPNYJ5xLizqKYREJJLBa-lpcIhLp8spgsH8,841
88
+ llama_stack_api/providers/api.py,sha256=ytwxri9s6p8j9ClFKgN9mfa1TF0VZh1o8W5cVZR49rc,534
89
+ llama_stack_api/providers/fastapi_routes.py,sha256=jb1yrXEk1MdtcgWCToSZtaB-wjKqv5uVKIkvduXoKlM,1962
90
+ llama_stack_api/providers/models.py,sha256=nqBzh9je_dou35XFjYGD43hwKgjWy6HIRmGWUrcGqOw,653
91
+ llama_stack_api/safety/__init__.py,sha256=twVVKuhGYnCEhbfhj5xwVTKNafqTSQqnbpWNtshncqQ,989
92
+ llama_stack_api/safety/api.py,sha256=099hNcuxJ4Hq2q7odwUC1xK_BhUF3s8xsaq0H6Uqzso,922
93
+ llama_stack_api/safety/datatypes.py,sha256=MyL7788i2kNhT78g-mHuCtjGTGX4PnoXukQyVSoThrA,3179
94
+ llama_stack_api/safety/fastapi_routes.py,sha256=Im4AtmBBVCvy8QMVxxTbMyHoMRhNufxfvm8Erf8qSC0,1779
95
+ llama_stack_api/safety/models.py,sha256=uT7zedIfA6Dx3oowFFCqxI2M-2-aeB5wof7WxUcDT9A,1164
96
+ llama_stack_api/scoring/__init__.py,sha256=3yaDuas_BKgk7xHQw_jXM2yLCe_GVtDsifTghDM11JU,1672
97
+ llama_stack_api/scoring/api.py,sha256=Il4GWAQV9_fn0Gbyb4NuRZX3arsoRcN1nHz3LT_0Cck,1103
98
+ llama_stack_api/scoring/fastapi_routes.py,sha256=T3slTUmGazXu6frprMFRrSodyRsBHitt_tdV4LARKIM,1912
99
+ llama_stack_api/scoring/models.py,sha256=UMWLv6f_6fHQ-Qw8mN3K8jwQCdBAo8d6i-R8VFCYB_Y,2543
100
+ llama_stack_api/scoring_functions/__init__.py,sha256=-xNFV-V1dpCr5QLi3xR27WujXv4JJgDy7oBZFhZKOuU,1443
101
+ llama_stack_api/scoring_functions/api.py,sha256=Hq3PVj5pNIsXAyFPSeJefKNAuxAsOoKUlJ0Z5tPEDrs,1027
102
+ llama_stack_api/scoring_functions/fastapi_routes.py,sha256=jhhntvllqIEQAYZLoQXCpv0CzToY7JyAVYMxaORK_Oc,3737
103
+ llama_stack_api/scoring_functions/models.py,sha256=mEWPCk5g2-18-tcC72eBAeUhwxA7xFYBoY3u5BdBDU4,7693
104
+ llama_stack_api/shields/__init__.py,sha256=7P7uuq46Or0BhIMNy9gZe1aoR0sMqb0K-kiVVxJ4AAY,1003
105
+ llama_stack_api/shields/api.py,sha256=aAkHsHAM6Xs3KDLOtPA1-9HaZmn8-fq_qHldMxNPMEY,1032
106
+ llama_stack_api/shields/fastapi_routes.py,sha256=iJR7m0LipkHmG8Q1JsUxl0P3J5Dmfb2A95UM4Nw3SO4,3021
107
+ llama_stack_api/shields/models.py,sha256=FeHJfQbALqhD9sgleUYxyYrSXG8I_Cd0LLjk8DFctkc,2279
108
+ llama_stack_api/vector_io/__init__.py,sha256=sYSWb991Cgphe2vaSQM--0zINckpuEpvODY5Yvz6oQU,2672
109
+ llama_stack_api/vector_io/api.py,sha256=tEXLKOKgbDSuZjLelV7gr-DEqukfNT9UGG33UP7XeQE,7066
110
+ llama_stack_api/vector_io/fastapi_routes.py,sha256=EIURXCG4ZtkOkQY7V_q0scYQuUusi0G0nqcCckMCXRE,19887
111
+ llama_stack_api/vector_io/models.py,sha256=L7Wv8s5fMaTbSqkkS-Tfxp5-LJmz4xAL-KS1HK27-5k,25741
112
+ llama_stack_api-0.5.0rc1.dist-info/METADATA,sha256=pzwzIiZ2f5AuFldiRPVaQTukQDR3BQ_s_WAWBFvhsyQ,4193
113
+ llama_stack_api-0.5.0rc1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
114
+ llama_stack_api-0.5.0rc1.dist-info/top_level.txt,sha256=Ybn9EvE0q9jHHJ9K9d3kdYXLbof-4zEYS2IX7tjztgY,16
115
+ llama_stack_api-0.5.0rc1.dist-info/RECORD,,