Git Product home page Git Product logo

pinecone-python-client's Introduction

pinecone-client

The Pinecone python client

For more information, see the docs at https://www.pinecone.io/docs/

Installation

Install a released version from pip:

pip3 install pinecone-client

Or the gRPC version of the client for tuning performance

pip3 install "pinecone-client[grpc]"

Or the latest development version:

pip3 install git+https://[email protected]/pinecone-io/pinecone-python-client.git

Or a specific development version:

pip3 install git+https://[email protected]/pinecone-io/pinecone-python-client.git
pip3 install git+https://[email protected]/pinecone-io/pinecone-python-client.git@example-branch-name
pip3 install git+https://[email protected]/pinecone-io/pinecone-python-client.git@259deff

Creating an index

The following example creates an index without a metadata configuration. By default, Pinecone indexes all metadata.

import pinecone


pinecone.init(api_key="YOUR_API_KEY",
              environment="us-west1-gcp")

pinecone.create_index("example-index", dimension=1024)

The following example creates an index that only indexes the "color" metadata field. Queries against this index cannot filter based on any other metadata field.

metadata_config = {
    "indexed": ["color"]
}

pinecone.create_index("example-index-2", dimension=1024,
                      metadata_config=metadata_config)

List indexes

The following example returns all indexes in your project.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

active_indexes = pinecone.list_indexes()

Describe index

The following example returns information about the index example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

index_description = pinecone.describe_index("example-index")

Delete an index

The following example deletes example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

pinecone.delete_index("example-index")

Scale replicas

The following example changes the number of replicas for example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

new_number_of_replicas = 4
pinecone.configure_index("example-index", replicas=new_number_of_replicas)

Describe index statistics

The following example returns statistics about the index example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

index_stats_response = index.describe_index_stats()

Upsert vectors

The following example upserts vectors to example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

upsert_response = index.upsert(
    vectors=[
        ("vec1", [0.1, 0.2, 0.3, 0.4], {"genre": "drama"}),
        ("vec2", [0.2, 0.3, 0.4, 0.5], {"genre": "action"}),
    ],
    namespace="example-namespace"
)

Query an index

The following example queries the index example-index with metadata filtering.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

query_response = index.query(
    namespace="example-namespace",
    top_k=10,
    include_values=True,
    include_metadata=True,
    vector=[0.1, 0.2, 0.3, 0.4],
    filter={
        "genre": {"$in": ["comedy", "documentary", "drama"]}
    }
)

Delete vectors

The following example deletes vectors by ID.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

delete_response = index.delete(ids=["vec1", "vec2"], namespace="example-namespace")

Fetch vectors

The following example fetches vectors by ID.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

fetch_response = index.fetch(ids=["vec1", "vec2"], namespace="example-namespace")

Update vectors

The following example updates vectors by ID.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")
index = pinecone.Index("example-index")

update_response = index.update(
    id="vec1",
    values=[0.1, 0.2, 0.3, 0.4],
    set_metadata={"genre": "drama"},
    namespace="example-namespace"
)

Create collection

The following example creates the collection example-collection from example-index.

import pinecone

pinecone.init(api_key="YOUR_API_KEY",
              environment="us-west1-gcp")

pinecone.create_collection("example-collection", "example-index")

List collections

The following example returns a list of the collections in the current project.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

active_collections = pinecone.list_collections()

Describe a collection

The following example returns a description of the collection example-collection.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

collection_description = pinecone.describe_collection("example-collection")

Delete a collection

The following example deletes the collection example-collection.

import pinecone

pinecone.init(api_key="YOUR_API_KEY", environment="us-west1-gcp")

pinecone.delete_collection("example-collection")

Contributing

If you'd like to make a contribution, or get setup locally to develop the Pinecone python client, please see our contributing guide

pinecone-python-client's People

Contributors

rajat08 avatar benjaminran avatar yarden-slon avatar mutayroei avatar igiloh-pinecone avatar acatav avatar jackpertschuk avatar gdj0nes avatar jhamon avatar byronnlandry avatar cherryleaf avatar miararoy avatar pineconemachine avatar yaakovs avatar dependabot[bot] avatar tdonia avatar austin-denoble avatar abhinav-upadhyay avatar adamgs avatar chelseatroy avatar efung avatar hiradp avatar izeye avatar tomcsojn avatar markmcd avatar zackproser avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.