import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; export interface CollectionTimeouts { /** * Timeout defaults to 5 mins. Accepts a string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). */ create?: pulumi.Input; /** * Timeout defaults to 5 mins. Accepts a string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). */ delete?: pulumi.Input; } export interface GetEmbed { /** * The dimension of the embedding model, specifying the size of the output vector. */ dimension?: number; /** * Identifies the name of the text field from your document model that will be embedded. */ fieldMap?: { [key: string]: string; }; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector*type' is 'sparse', the metric must be 'dotproduct'. If the vector*type is dense, the metric defaults to 'cosine'. */ metric?: string; /** * the name of the embedding model to use for the index. */ model?: string; /** * The read parameters for the embedding model. */ readParameters?: { [key: string]: string; }; /** * The index vector type associated with the model. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension will be nil. */ vectorType?: string; /** * The write parameters for the embedding model. */ writeParameters?: { [key: string]: string; }; } export interface GetEmbedArgs { /** * The dimension of the embedding model, specifying the size of the output vector. */ dimension?: pulumi.Input; /** * Identifies the name of the text field from your document model that will be embedded. */ fieldMap?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector*type' is 'sparse', the metric must be 'dotproduct'. If the vector*type is dense, the metric defaults to 'cosine'. */ metric?: pulumi.Input; /** * the name of the embedding model to use for the index. */ model?: pulumi.Input; /** * The read parameters for the embedding model. */ readParameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The index vector type associated with the model. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension will be nil. */ vectorType?: pulumi.Input; /** * The write parameters for the embedding model. */ writeParameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; } export interface GetSpec { /** * Configuration needed to deploy a pod-based index. */ pod?: inputs.GetSpecPod; /** * Configuration needed to deploy a serverless index. */ serverless?: inputs.GetSpecServerless; } export interface GetSpecArgs { /** * Configuration needed to deploy a pod-based index. */ pod?: pulumi.Input; /** * Configuration needed to deploy a serverless index. */ serverless?: pulumi.Input; } export interface GetSpecPod { /** * The environment where the index is hosted. */ environment?: string; /** * Configuration for the behavior of Pinecone's internal metadata index. By default, all metadata is indexed; when metadata*config is present, only specified metadata fields are indexed. These configurations are only valid for use with pod-based indexes. */ metadataConfig?: inputs.GetSpecPodMetadataConfig; /** * The type of pod to use. One of s1, p1, or p2 appended with . and one of x1, x2, x4, or x8. */ podType?: string; /** * The number of pods to be used in the index. This should be equal to shards x replicas.' */ pods?: number; /** * The number of replicas. Replicas duplicate your index. They provide higher availability and throughput. Replicas can be scaled up or down as your needs change. */ replicas?: number; /** * The number of shards. Shards split your data across multiple pods so you can fit more data into an index. */ shards?: number; /** * The name of the collection to create an index from. */ sourceCollection?: string; } export interface GetSpecPodArgs { /** * The environment where the index is hosted. */ environment?: pulumi.Input; /** * Configuration for the behavior of Pinecone's internal metadata index. By default, all metadata is indexed; when metadata*config is present, only specified metadata fields are indexed. These configurations are only valid for use with pod-based indexes. */ metadataConfig?: pulumi.Input; /** * The type of pod to use. One of s1, p1, or p2 appended with . and one of x1, x2, x4, or x8. */ podType?: pulumi.Input; /** * The number of pods to be used in the index. This should be equal to shards x replicas.' */ pods?: pulumi.Input; /** * The number of replicas. Replicas duplicate your index. They provide higher availability and throughput. Replicas can be scaled up or down as your needs change. */ replicas?: pulumi.Input; /** * The number of shards. Shards split your data across multiple pods so you can fit more data into an index. */ shards?: pulumi.Input; /** * The name of the collection to create an index from. */ sourceCollection?: pulumi.Input; } export interface GetSpecPodMetadataConfig { /** * The indexed fields. */ indexeds?: string[]; } export interface GetSpecPodMetadataConfigArgs { /** * The indexed fields. */ indexeds?: pulumi.Input[]>; } export interface GetSpecServerless { /** * Ready. */ cloud?: string; /** * Initializing InitializationFailed ScalingUp ScalingDown ScalingUpPodSize ScalingDownPodSize Upgrading Terminating Ready */ region?: string; } export interface GetSpecServerlessArgs { /** * Ready. */ cloud?: pulumi.Input; /** * Initializing InitializationFailed ScalingUp ScalingDown ScalingUpPodSize ScalingDownPodSize Upgrading Terminating Ready */ region?: pulumi.Input; } export interface GetStatus { /** * Ready. */ ready?: boolean; /** * Initializing InitializationFailed ScalingUp ScalingDown ScalingUpPodSize ScalingDownPodSize Upgrading Terminating Ready */ state?: string; } export interface GetStatusArgs { /** * Ready. */ ready?: pulumi.Input; /** * Initializing InitializationFailed ScalingUp ScalingDown ScalingUpPodSize ScalingDownPodSize Upgrading Terminating Ready */ state?: pulumi.Input; } export interface IndexEmbed { /** * The dimension of the embedding model, specifying the size of the output vector. */ dimension?: pulumi.Input; /** * Identifies the name of the text field from your document model that will be embedded. */ fieldMap?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector*type' is 'sparse', the metric must be 'dotproduct'. If the vector*type is dense, the metric defaults to 'cosine'. */ metric?: pulumi.Input; /** * the name of the embedding model to use for the index. */ model?: pulumi.Input; /** * The read parameters for the embedding model. */ readParameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The index vector type associated with the model. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension will be nil. */ vectorType?: pulumi.Input; /** * The write parameters for the embedding model. */ writeParameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; } export interface IndexSpec { /** * Configuration needed to deploy a pod-based index. */ pod?: pulumi.Input; /** * Configuration needed to deploy a serverless index. */ serverless?: pulumi.Input; } export interface IndexSpecPod { /** * The environment where the index is hosted. */ environment: pulumi.Input; /** * Configuration for the behavior of Pinecone's internal metadata index. By default, all metadata is indexed; when metadata*config is present, only specified metadata fields are indexed. These configurations are only valid for use with pod-based indexes. */ metadataConfig?: pulumi.Input; /** * The type of pod to use. One of s1, p1, or p2 appended with . and one of x1, x2, x4, or x8. */ podType: pulumi.Input; /** * The number of pods to be used in the index. This should be equal to shards x replicas.' */ pods?: pulumi.Input; /** * The number of replicas. Replicas duplicate your index. They provide higher availability and throughput. Replicas can be scaled up or down as your needs change. */ replicas?: pulumi.Input; /** * The number of shards. Shards split your data across multiple pods so you can fit more data into an index. */ shards?: pulumi.Input; /** * The name of the collection to create an index from. */ sourceCollection?: pulumi.Input; } export interface IndexSpecPodMetadataConfig { /** * The indexed fields. */ indexeds: pulumi.Input[]>; } export interface IndexSpecServerless { /** * The public cloud where you would like your index hosted. [gcp|aws|azure] */ cloud: pulumi.Input; /** * The region where you would like your index to be created. */ region: pulumi.Input; } export interface IndexStatus { /** * Ready. */ ready?: pulumi.Input; /** * Initializing InitializationFailed ScalingUp ScalingDown ScalingUpPodSize ScalingDownPodSize Upgrading Terminating Ready */ state?: pulumi.Input; } export interface IndexTimeouts { /** * Timeout defaults to 5 mins. Accepts a string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). */ create?: pulumi.Input; /** * Timeout defaults to 5 mins. Accepts a string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). */ delete?: pulumi.Input; }