Git Product home page Git Product logo

healthsearch-demo's Introduction

Weaviate Weaviate logo

Go Reference Build Status Go Report Card Coverage Status Slack GitHub Tutorials

Overview

Weaviate is a cloud-native, open source vector database that is robust, fast, and scalable.

To get started quickly, have a look at one of these pages:

For more details, read through the summary on this page or see the system documentation.


Why Weaviate?

Weaviate uses state-of-the-art machine learning (ML) models to turn your data - text, images, and more - into a searchable vector database.

Here are some highlights.

Speed

Weaviate is fast. The core engine can run a 10-NN nearest neighbor search on millions of objects in milliseconds. See benchmarks.

Flexibility

Weaviate can vectorize your data at import time. Or, if you have already vectorized your data, you can upload your own vectors instead.

Modules give you the flexibility to tune Weaviate for your needs. More than two dozen modules connect you to popular services and model hubs such as OpenAI, Cohere, VoyageAI and HuggingFace. Use custom modules to work with your own models or third party services.

Production-readiness

Weaviate is built with scaling, replication, and security in mind so you can go smoothly from rapid prototyping to production at scale.

Beyond search

Weaviate doesn't just power lightning-fast vector searches. Other superpowers include recommendation, summarization, and integration with neural search frameworks.

Who uses Weaviate?

  • Software Engineers

    • Weaviate is an ML-first database engine
    • Out-of-the-box modules for AI-powered searches, automatic classification, and LLM integration
    • Full CRUD support
    • Cloud-native, distributed system that runs well on Kubernetes
    • Scales with your workloads
  • Data Engineers

    • Weaviate is a fast, flexible vector database
    • Use your own ML model or third party models
    • Run locally or with an inference service
  • Data Scientists

    • Seamless handover of Machine Learning models to engineers and MLOps
    • Deploy and maintain your ML models in production reliably and efficiently
    • Easily package custom trained models

What can you build with Weaviate?

A Weaviate vector database can search text, images, or a combination of both. Fast vector search provides a foundation for chatbots, recommendation systems, summarizers, and classification systems.

Here are some examples that show how Weaviate integrates with other AI and ML tools:

Use Weaviate with third part embeddings

Use Weaviate as a document store

Use Weaviate as a memory backend

Demos

These demos are working applications that highlight some of Weaviate's capabilities. Their source code is available on GitHub.

How can you connect to Weaviate?

Weaviate exposes a GraphQL API and a REST API. Starting in v1.23, a new gRPC API provides even faster access to your data.

Weaviate provides client libraries for several popular languages:

There are also community supported libraries for additional languages.

Where can You learn more?

Free, self-paced courses in Weaviate Academy teach you how to use Weaviate. The Tutorials repo has code for example projects. The Recipes repo has even more project code to get you started.

The Weaviate blog and podcast regularly post stories on Weaviate and AI.

Here are some popular posts:

Blogs

Podcasts

Other reading

Join our community!

At Weaviate, we love to connect with our community. We love helping amazing people build cool things. And, we love to talk with you about you passion for vector databases and AI.

Please reach out, and join our community:

To keep up to date with new releases, meetup news, and more, subscribe to our newsletter

healthsearch-demo's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

healthsearch-demo's Issues

Error in starting weaviate container for backend

healthsearch-demo-backend-1 | exec ./wait-for-it.sh: no such file or directory

But I can see this file is available in folder backend. Do I need to make some changes ??

Adding Dockerfile of backend.

FROM python:3.10

WORKDIR /backend

COPY . /backend

RUN pip install --no-cache-dir -r requirements.txt

RUN chmod +x wait-for-it.sh

RUN chmod +x start.sh

EXPOSE 8000

CMD ["./wait-for-it.sh", "http://weaviate", "--", "./start.sh"]

Error in backend README & script for dataloader

Hi,

Error in backend-specific README.md, refers to example supplements dataset loader as being in sub-folder scripts, which does not exist, the .py script is in the backend folder.

Script import_data_to_weaviate.py also incorrectly names the environment variables for Weaviate cluster and key incorrectly (not same as proposed keys in backend README setup).

Thanks

Error loading data...

Trying to load the sample from this demo, connection is made, data is read/loaded and product class is created.

However the following error surfaces:

File "/home/ubuntu/weaviate-apps/healthcare-demo/import_data_to_weaviate.py", line 175, in main
"name": data[d].get("name", "Productname"),

Data is a json object. Do I have to convert this to a dictionary before importing? Not super facile with Python (10.x) and grubbing around google didn't raise anything.

TIA


Addendum: Oddly, the data wouldn't load from / on a remote docker instance but I was able to send the data from a local machine to the remote instance.

Connection error on localhost

While trying to describe the #6 issue and re-familiarize myself with the example, I came across another issue while trying to set up on local machine.

When doing a docker compose up -d, the backend can not find the weaviate instance (all containers are local). This error surfaces,

File "/usr/local/lib/python3.8/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level)

File "", line 1014, in _gcd_import

File "", line 991, in _find_and_load

File "", line 975, in _find_and_load_unlocked

File "", line 671, in _load_unlocked

File "", line 843, in exec_module

File "", line 219, in _call_with_frames_removed

File "/Backend/api.py", line 46, in
client = weaviate.Client(

File "/usr/local/lib/python3.8/site-packages/weaviate/client.py", line 150, in init
self._connection = Connection(

File "/usr/local/lib/python3.8/site-packages/weaviate/connect/connection.py", line 650, in init
super().init(

File "/usr/local/lib/python3.8/site-packages/weaviate/connect/connection.py", line 163, in init
self.wait_for_weaviate(startup_period)

File "/usr/local/lib/python3.8/site-packages/weaviate/connect/connection.py", line 631, in wait_for_weaviate
raise WeaviateStartUpError(

I verified all the containers were running and in the api.py file, tried in "weaviate.Client" to set the startup_period to wait 10 seconds, 20 seconds, 60 seconds but no help. I am not using API auth, trying anonymous first. Also verified the openai and server url in .env. I also pinned against weaviate-client==3.22.1 and tried to launch the containers manually, one-by-one.

I noticed the dockerfile builds on python3.8 but the lib packages use 3.10. Am I missing something fundamental? Tried to build using 3.10 but the error remains.

TIA for assistance.

V.

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.