{"id":18719463,"url":"https://github.com/henomis/pinecone-go","last_synced_at":"2025-04-12T14:08:31.140Z","repository":{"id":155351290,"uuid":"631311496","full_name":"henomis/pinecone-go","owner":"henomis","description":"Unofficial pinecone Go SDK - pinecone-go","archived":false,"fork":false,"pushed_at":"2024-01-25T16:58:47.000Z","size":46,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T08:47:33.624Z","etag":null,"topics":["ai","database","go","pinecone","vector"],"latest_commit_sha":null,"homepage":"https://simonevellei.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/henomis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-22T16:07:32.000Z","updated_at":"2024-07-09T21:33:42.000Z","dependencies_parsed_at":"2023-11-07T12:27:34.275Z","dependency_job_id":"fc8c9045-3c9d-4a0e-ba66-cdce52c91ce6","html_url":"https://github.com/henomis/pinecone-go","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henomis%2Fpinecone-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henomis%2Fpinecone-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henomis%2Fpinecone-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henomis%2Fpinecone-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/henomis","download_url":"https://codeload.github.com/henomis/pinecone-go/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248578867,"owners_count":21127713,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","database","go","pinecone","vector"],"created_at":"2024-11-07T13:26:10.265Z","updated_at":"2025-04-12T14:08:31.121Z","avatar_url":"https://github.com/henomis.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Unofficial Pinecone Go SDK\n\n[![GoDoc](https://godoc.org/github.com/henomis/pinecone-go/v2?status.svg)](https://godoc.org/github.com/henomis/pinecone-go/v2) [![Go Report Card](https://goreportcard.com/badge/github.com/henomis/pinecone-go/v2)](https://goreportcard.com/report/github.com/henomis/pinecone-go/v2) [![GitHub release](https://img.shields.io/github/release/henomis/pinecone-go.svg)](https://github.com/henomis/pinecone-go/v2/releases)\n\nThis is [Pinecone](https://pinecone.io)'s **unofficial** Go client, designed to enable you to use Pinecone's services easily from your own applications.\n\n## Pinecone\n\n[Pinecone](https://pinecone.io) is a managed, cloud-native vector database that allows you to build high-performance vector search applications.\n\n## API support v2\n\n| **Index Operations** | **Status** | **Vector Operations** | **Status** |\n| -------------------- | ---------- | --------------------- | ---------- |\n| List Collections     | 🟢         | DescribeIndexStats    | 🟢         |\n| Create Collection    | 🟢         | Query                 | 🟢         |\n| Describe Collection  | 🟢         | Delete                | 🟢         |\n| Delete Collection    | 🟢         | Fetch                 | 🟢         |\n| List Indexes         | 🟢         | Update                | 🟢         |\n| Create Index         | 🟢         | Upsert                | 🟢         |\n| Describe Index       | 🟢         | List                  | 🟢         |\n| Delete Index         | 🟢         |                       |            |\n| Configure Index      | 🟢         |                       |            |\n\n## Getting started\n\n### Installation\n\nYou can load pinecone-go into your project by using:\n\n```\ngo get github.com/henomis/pinecone-go/v2@v2.0.0\n```\n\n### Configuration\n\nThe only thing you need to start using Pinecone's APIs is the developer API key and related environment. Copy and paste them in the corresponding place in the code, select the API and the parameters you want to use, and that's it.\n\n### Usage\n\nPlease refer to the [examples folder](examples/cmd/) to see how to use the SDK.\n\nHere below a simple usage example:\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"os\"\n\n\tpineconego \"github.com/henomis/pinecone-go/v2\"\n\t\"github.com/henomis/pinecone-go/v2/request\"\n\t\"github.com/henomis/pinecone-go/v2/response\"\n)\n\nfunc main() {\n\tapiKey := os.Getenv(\"PINECONE_API_KEY\")\n\tif apiKey == \"\" {\n\t\tpanic(\"PINECONE_API_KEY is not set\")\n\t}\n\n\tp := pineconego.New(apiKey)\n\treplicas := 1\n\tshards := 1\n\tmetric := request.MetricCosine\n\treq := \u0026request.IndexCreate{\n\t\tName:      \"test-index\",\n\t\tDimension: 10,\n\t\tMetric:    \u0026metric,\n\t\tSpec: request.Spec{\n\t\t\tPod: \u0026request.PodSpec{\n\t\t\t\tReplicas:    \u0026replicas,\n\t\t\t\tShards:      \u0026shards,\n\t\t\t\tPodType:     \"s1.x1\",\n\t\t\t\tEnvironment: \"gcp-starter\",\n\t\t\t},\n\t\t},\n\t}\n\tres := \u0026response.IndexCreate{}\n\terr := p.IndexCreate(context.Background(), req, res)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tif !res.IsSuccess() {\n\t\tif res.Response.Code != nil {\n\t\t\tfmt.Printf(\"Error: %d -\", *res.Response.Code)\n\t\t}\n\n\t\tif res.Response.Message != nil {\n\t\t\tfmt.Printf(\" %s\\n\", *res.Response.Message)\n\t\t}\n\n\t\tif res.Response.RawBody != nil {\n\t\t\tfmt.Printf(\" %s\\n\", *res.Response.RawBody)\n\t\t}\n\n\t\treturn\n\t}\n\n\tb, err := json.MarshalIndent(res, \"\", \"  \")\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tfmt.Println(string(b))\n\n}\n```\n\n## Who uses pinecone-go?\n\n- [LinGoose](https://github.com/henomis/lingoose) Go framework for building awesome LLM apps\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenomis%2Fpinecone-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenomis%2Fpinecone-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenomis%2Fpinecone-go/lists"}