{"id":8325816,"url":"https://github.com/noizu-labs-ml/elixir-weaviate","last_synced_at":"2025-07-30T14:32:03.387Z","repository":{"id":185964889,"uuid":"674401668","full_name":"noizu-labs-ml/elixir-weaviate","owner":"noizu-labs-ml","description":"Weaviate Rest Wrapper for Elixir","archived":false,"fork":false,"pushed_at":"2023-10-02T16:02:23.000Z","size":93,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-08-14T10:44:28.878Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Elixir","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/noizu-labs-ml.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}},"created_at":"2023-08-03T21:30:25.000Z","updated_at":"2024-04-13T06:57:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"d44be1cd-89c3-4ae6-8fba-97ae5e2c2bfa","html_url":"https://github.com/noizu-labs-ml/elixir-weaviate","commit_stats":null,"previous_names":["noizu-labs/elixir-weaviate","noizu-labs-ml/elixir-weaviate"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noizu-labs-ml%2Felixir-weaviate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noizu-labs-ml%2Felixir-weaviate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noizu-labs-ml%2Felixir-weaviate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noizu-labs-ml%2Felixir-weaviate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/noizu-labs-ml","download_url":"https://codeload.github.com/noizu-labs-ml/elixir-weaviate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228147447,"owners_count":17876680,"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":[],"created_at":"2024-04-21T12:24:59.053Z","updated_at":"2024-12-04T16:31:20.651Z","avatar_url":"https://github.com/noizu-labs-ml.png","language":"Elixir","funding_links":[],"categories":["Recently Updated","Artificial Intelligence","Clients/Wrappers/Nifs"],"sub_categories":["[Apr 19, 2024](/content/2024/04/19/README.md)","Weaviate VDB Client"],"readme":"# Noizu.Weaviate - README\n\nNoizu.Weaviate is a library providing a simple wrapper around Weaviate's API calls. With Noizu.Weaviate, you can easily interact with Weaviate's schema and objects.\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Configuration](#configuration)\n- [Usage](#usage)\n    - [Defining Schema Classes](#defining-schema-classes)\n    - [Creating Objects](#creating-objects)\n    - [Editing Objects](#editing-objects)\n    - [Deleting Objects](#deleting-objects)\n- [API Modules](#api-modules)\n    - [Noizu.Weaviate.Api.Meta](#noizoweaviateapimeta)\n    - [Noizu.Weaviate.Api.Batch](#noizoweaviateapibatch)\n    - [Noizu.Weaviate.Api.Backups](#noizoweaviateapibackups)\n    - [Noizu.Weaviate.Api.Schema](#noizoweaviateapischema)\n    - [Noizu.Weaviate.Api.Nodes](#noizoweaviateapinodes)\n    - [Noizu.Weaviate.Api.Objects](#noizoweaviateapiobjects)\n    - [Noizu.Weaviate.Api.Auth](#noizoweaviateapiauth)\n    - [Noizu.Weaviate.Api.Classification](#noizoweaviateapiclassification)\n\n## Installation\n\nYou can install Noizu.Weaviate by adding it as a dependency in your `mix.exs` file:\n\n```elixir\ndef deps do\n  [\n    {:noizu_weaviate, \"~\u003e 0.1.0\"}\n  ]\nend\n```\n\nThen, run `mix deps.get` to fetch the dependency.\n\n## Configuration\n\nTo configure Noizu.Weaviate, you need to set the Weaviate API key in your application's configuration. Update your `config/config.exs` file with the following configuration:\n\n```elixir\nconfig :noizu_weaviate,\n  weaviate_api_key: \"your_api_key_here\"\n```\n\n## Usage\n\nNoizu.Weaviate provides an easy-to-use API for working with Weaviate schema and objects.\n\n### Defining Schema Classes\n\nTo define a schema class, you can use the `Noizu.Weaviate.Class` module and the `weaviate_class` macro. Here's an example:\n\n```elixir\ndefmodule Product do\n  use Noizu.Weaviate.Class\n  weaviate_class(\"Product\") do\n      description \"A class for representing products in Weaviate\"\n    \n      property :name, :string\n      property :price, :number\n      property :description, :text\n  end\nend\n```\n\n### Creating Objects\n\nYou can create objects using the `Noizu.Weaviate.Api.Objects.create` function. Here's an example:\n\n```elixir\nobject = %Product{name: \"iPhone 12\", price: 999.99, description: \"The latest iPhone model\"}\n{:ok, response} = Noizu.Weaviate.Api.Objects.create(object)\n```\n\n### Editing Objects\n\nYou can edit objects using the `Noizu.Weaviate.Api.Objects.update` function. Here's an example:\n\n```elixir\nobject = %Product{id: \"object_id\", name: \"New iPhone 12\", price: 1099.99, description: \"The new iPhone model\"}\n{:ok, response} = Noizu.Weaviate.Api.Objects.update(object)\n```\n\n### Deleting Objects\n\nYou can delete objects using the `Noizu.Weaviate.Api.Objects.delete` function. Here's an example:\n\n```elixir\n{:ok, response} = Noizu.Weaviate.Api.Objects.delete(\"class_name\", \"object_id\")\n```\n\n## API Modules\n\nNoizu.Weaviate provides several API modules for working with Weaviate. Here's an overview of the available modules and their functionalities:\n\n### Noizu.Weaviate.Api.Meta\n\nThis module provides functions for getting meta information about the Weaviate instance. You can get information about the Weaviate version, host, and more.\n\nSee [Noizu.Weaviate.Api.Meta README](lib/weaviate_api/meta/README.md) for more details.\n\n### Noizu.Weaviate.Api.Batch\n\nThis module provides functions for batch operations in Weaviate. You can batch create objects and references, as well as batch delete objects.\n\nSee [Noizu.Weaviate.Api.Batch README](lib/weaviate_api/batch/README.md) for more details.\n\n### Noizu.Weaviate.Api.Backups\n\nThis module provides functions for working with backups in Weaviate. You can create backups, get backup status, restore backups, and get restore status.\n\nSee [Noizu.Weaviate.Api.Backups README](lib/weaviate_api/backups/README.md) for more details.\n\n### Noizu.Weaviate.Api.Schema\n\nThis module provides functions for working with the Weaviate schema. You can create, get, update, and delete classes, properties, shards, and tenants.\n\nSee [Noizu.Weaviate.Api.Schema README](lib/weaviate_api/schema/README.md) for more details.\n\n### Noizu.Weaviate.Api.Nodes\n\nThis module provides functions for getting information about the Weaviate nodes. You can get information about the connected nodes in the Weaviate cluster.\n\nSee [Noizu.Weaviate.Api.Nodes README](lib/weaviate_api/nodes/README.md) for more details.\n\n### Noizu.Weaviate.Api.Objects\n\nThis module provides functions for interacting with data objects in Weaviate. You can create, get, update, patch, delete, and validate objects.\n\nSee [Noizu.Weaviate.Api.Objects README](lib/weaviate_api/objects/README.md) for more details.\n\n### Noizu.Weaviate.Api.Auth\n\nThis module provides functions for authentication in the Weaviate API. You can get the OpenID configuration, check the liveness of the Weaviate instance, and check the readiness of the Weaviate instance.\n\nSee [Noizu.Weaviate.Api.Auth README](lib/weaviate_api/well_known/README.md) for more details.\n\n### Noizu.Weaviate.Api.Classification\n\nThis module provides functions for classification operations in Weaviate. You can start a classification, get the status of a classification, and cancel a classification.\n\nSee [Noizu.Weaviate.Api.Classification README](lib/weaviate_api/classification/README.md) for more details.\n\nFor more detailed documentation on all available functions and options, please refer to the individual module readmes provided above.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoizu-labs-ml%2Felixir-weaviate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnoizu-labs-ml%2Felixir-weaviate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoizu-labs-ml%2Felixir-weaviate/lists"}