# vald-client-python
[](https://badge.fury.io/py/vald-client-python)
[](https://github.com/vdaas/vald/releases/latest)

A Python gRPC client library for [Vald](https://github.com/vdaas/vald).
## Install
Using pip,
```sh
pip install vald-client-python
```
## Usage
To use v1 APIs,
```python
import grpc
from vald.v1.vald import insert_pb2_grpc
from vald.v1.vald import search_pb2_grpc
from vald.v1.vald import update_pb2_grpc
from vald.v1.vald import remove_pb2_grpc
from vald.v1.payload import payload_pb2
## create a channel by passing "{host}:{port}"
channel = grpc.insecure_channel("gateway.vald.vdaas.org:80")
## create stubs for calling RPCs
istub = insert_pb2_grpc.InsertStub(channel)
sstub = search_pb2_grpc.SearchStub(channel)
ustub = update_pb2_grpc.UpdateStub(channel)
rstub = remove_pb2_grpc.RemoveStub(channel)
## call RPCs: Insert
vec = payload_pb2.Object.Vector(id='vector_id_1', vector=[0.1, 0.2, 0.3])
icfg = payload_pb2.Insert.Config(skip_strict_exist_check=True)
istub.Insert(payload_pb2.Insert.Request(vector=vec, config=icfg))
## call RPCs: Search
### num: number of results
### timeout: 3 seconds
scfg = payload_pb2.Search.Config(num=10, radius=-1.0, epsilon=0.01, timeout=3000000000)
res = sstub.Search(payload_pb2.Search.Request(vector=[0.1, 0.2, 0.3], config=scfg))
## call RPCs: Update
uvec = payload_pb2.Object.Vector(id='vector_id_1', vector=[0.1, 0.2, 0.3])
ucfg = payload_pb2.Update.Config(skip_strict_exist_check=True)
ustub.Update(payload_pb2.Update.Request(vector=uvec, config=ucfg))
## call RPCs: Remove
rcfg = payload_pb2.Remove.Config(skip_strict_exist_check=True)
rid = payload_pb2.Object.ID(id='vector_id_1')
rstub.Remove(payload_pb2.Remove.Request(id=rid, config=rcfg))
## close channel
channel.close()
```
Raw data
{
"_id": null,
"home_page": "https://github.com/vdaas/vald-client-python",
"name": "vald-client-python",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "vald team",
"author_email": "vald@vdaas.org",
"download_url": "https://files.pythonhosted.org/packages/fa/95/92baf7d6f268578b667188bb00e4804f0809d6e5d64e8115b159e0de0080/vald-client-python-1.7.16.tar.gz",
"platform": null,
"description": "# vald-client-python\n\n[](https://badge.fury.io/py/vald-client-python)\n[](https://github.com/vdaas/vald/releases/latest)\n\n\nA Python gRPC client library for [Vald](https://github.com/vdaas/vald).\n\n## Install\n\nUsing pip,\n\n```sh\npip install vald-client-python\n```\n\n## Usage\n\nTo use v1 APIs,\n\n```python\nimport grpc\nfrom vald.v1.vald import insert_pb2_grpc\nfrom vald.v1.vald import search_pb2_grpc\nfrom vald.v1.vald import update_pb2_grpc\nfrom vald.v1.vald import remove_pb2_grpc\nfrom vald.v1.payload import payload_pb2\n\n## create a channel by passing \"{host}:{port}\"\nchannel = grpc.insecure_channel(\"gateway.vald.vdaas.org:80\")\n\n## create stubs for calling RPCs\nistub = insert_pb2_grpc.InsertStub(channel)\nsstub = search_pb2_grpc.SearchStub(channel)\nustub = update_pb2_grpc.UpdateStub(channel)\nrstub = remove_pb2_grpc.RemoveStub(channel)\n\n## call RPCs: Insert\nvec = payload_pb2.Object.Vector(id='vector_id_1', vector=[0.1, 0.2, 0.3])\nicfg = payload_pb2.Insert.Config(skip_strict_exist_check=True)\nistub.Insert(payload_pb2.Insert.Request(vector=vec, config=icfg))\n\n\n## call RPCs: Search\n### num: number of results\n### timeout: 3 seconds\nscfg = payload_pb2.Search.Config(num=10, radius=-1.0, epsilon=0.01, timeout=3000000000)\nres = sstub.Search(payload_pb2.Search.Request(vector=[0.1, 0.2, 0.3], config=scfg))\n\n\n## call RPCs: Update\nuvec = payload_pb2.Object.Vector(id='vector_id_1', vector=[0.1, 0.2, 0.3])\nucfg = payload_pb2.Update.Config(skip_strict_exist_check=True)\nustub.Update(payload_pb2.Update.Request(vector=uvec, config=ucfg))\n\n\n## call RPCs: Remove\nrcfg = payload_pb2.Remove.Config(skip_strict_exist_check=True)\nrid = payload_pb2.Object.ID(id='vector_id_1')\nrstub.Remove(payload_pb2.Remove.Request(id=rid, config=rcfg))\n\n## close channel\nchannel.close()\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "a client library for Vald (https://github.com/vdaas/vald).",
"version": "1.7.16",
"project_urls": {
"Homepage": "https://github.com/vdaas/vald-client-python"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "cc4799db99a758459773a73fb3d6b5e92bd4007ea61abc7d9f4a434f37da438f",
"md5": "fca68236627a91428d0e8dc78f3f4f7d",
"sha256": "a5581f51012b22fd353443d6925c4fc558b4ad1abc73e49c2a0cf288f4da6409"
},
"downloads": -1,
"filename": "vald_client_python-1.7.16-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fca68236627a91428d0e8dc78f3f4f7d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 72457,
"upload_time": "2024-12-25T02:55:33",
"upload_time_iso_8601": "2024-12-25T02:55:33.326289Z",
"url": "https://files.pythonhosted.org/packages/cc/47/99db99a758459773a73fb3d6b5e92bd4007ea61abc7d9f4a434f37da438f/vald_client_python-1.7.16-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa9592baf7d6f268578b667188bb00e4804f0809d6e5d64e8115b159e0de0080",
"md5": "57845d4544e2315a0b803f30796ff89b",
"sha256": "c60796d09d8a3182bbfe08c141e6e90a621fc6b3aa06b5c876042f925698c2d6"
},
"downloads": -1,
"filename": "vald-client-python-1.7.16.tar.gz",
"has_sig": false,
"md5_digest": "57845d4544e2315a0b803f30796ff89b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 46230,
"upload_time": "2024-12-25T02:55:35",
"upload_time_iso_8601": "2024-12-25T02:55:35.743075Z",
"url": "https://files.pythonhosted.org/packages/fa/95/92baf7d6f268578b667188bb00e4804f0809d6e5d64e8115b159e0de0080/vald-client-python-1.7.16.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-25 02:55:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "vdaas",
"github_project": "vald-client-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "vald-client-python"
}