Aribadi look over here! OSSChat is online: Integrating CVP, the trial channel is open

Still struggling to find technical documents of open source projects repeatedly?

Teams are often inefficient due to frequent searches of open source project homepages?

I have to ask every day【Is there a faster solution to those "little white problems" in open source projects?

In this regard, I just want to say to you: Try OSSChat now! Try OSSChat now! Try OSSChat now!

(Link here: https://osschat.io/)

Who exactly is OSSChat?

Let me introduce, this is a very interesting tool we have made recently. Its main purpose is to build all the knowledge content accumulated in an open source community into a knowledge base, and package it into a question-answering robot through the ability of ChatGPT. In the future, we also plan to provide free embedded chatbot capabilities for various open source communities to solve key issues such as home page content search and user QA.

In short, with OSSChat, you can directly communicate with all the knowledge of an open source community through dialogue, which greatly improves the efficiency of information circulation in the open source community.

In the first early adopter version, OSSChat provides in-depth question-and-answer services based on open source projects such as Hugging Face, Pytorch, and Milvus, and more popular open source projects will be covered in the future. If your project is not on OSSChat, please contact us directly to apply!

01.

OSSChat: comes with "precise" genes

Friends who have used ChatGPT may have encountered similar problems: when you ask it for professional vertical domain knowledge or real-time information, due to the limitation of the training data set boundaries of the model itself, ChatGPT will generate seemingly correct but inconsistent with the facts. Inconsistent content, which is also an important flaw that ChatGPT has been widely criticized by the industry. In order to solve this problem, Zilliz launched a brand new CVP technology stack - namely ChatGPT + vector database (vector database) + prompt-as-code.

Undoubtedly, ChatGPT is excellent in natural language question answering. If a large-scale and reliable knowledge base is provided for ChatGPT through the vector database, and prompts are used to match user questions with corresponding knowledge base texts, ChatGPT can make use of its strengths and avoid weaknesses. Avoid ChatGPT "fake answers" to a large extent.

It can be said that OSSChat perfectly demonstrates the working mode of the CVP technology stack. Specifically, OSSChat uses the GitHub warehouse (repo) and related document pages of various open source projects as the source of truth. These data are converted into embeddings and stored in the Zilliz vector database, and other related content is stored in a separate in data memory. When a user interacts with an OSSChat question, a similarity search will be triggered in the Zilliz vector database, and then the search result will be sent to ChatGPT as an input question, and finally an accurate answer will be generated.

02.

About avoiding ChatGPT fabricating facts

Next, several typical examples can be used to demonstrate the ability of CVP Stack to help ChatGPT give accurate answers. We compared the answers of ChatGPT and OSSChat under the same question ( *Note: The following questions and answers are all translated from English, please go to Zilliz Blog to view the original English text ):

Q1: Does Hugging Face support OpenAI Whisper?

ChatGPT answer : As far as I know, as of September 2021, Hugging Face has not announced support for OpenAI Whisper. However, they may add support in the future. OpenAI Whisper is OpenAI's new language model, and it may take some time for other companies and developers to integrate it into their platforms and products.

OSSChat Answer : Yes, Hugging Face supports OpenAI Whisper.

The FlaxWhisperModel class is available in the transformers library, which is a wrapper for the OpenAI Whisper model. You can use this class to load a pretrained OpenAI Whisper model and use it for various natural language processing tasks, such as text classification, question answering, and text generation.

[ For this question, ChatGPT is limited by the knowledge base, and its answer is not very helpful. But OSSChat's answer is spot on, as it comes directly from the Hugging Face documentation site.

Q2: torch.compile What can this API be used for?

ChatGPT answer : As of the September 2021 cut-off date of my knowledge, there is no torch.compile API in PyTorch, a popular open-source machine learning library developed by Facebook AI Research. However, PyTorch provides various APIs related to compiling and optimizing neural network models, such as torch.nn.Module, which is the base class of all neural network modules in PyTorch. torch.nn.Module provides various methods and hooks for defining and optimizing neural network models.

In addition, PyTorch provides an integrated interface with Just-In-Time (JIT) compilers (such as the TorchScript JIT compiler), which can be used to optimize and compile PyTorch models on various hardware platforms. The JIT compiler can convert PyTorch models into a self-contained, serialized representation that can be loaded and executed in other environments or languages. In summary, although PyTorch does not have a torch.compile API, it provides various APIs and tools for optimizing and compiling neural network models.

OSSChat Answer: The purpose of the torch.compile API is to speed up PyTorch code by pre-compiling it. It can handle arbitrary Python code with minimal changes to existing code, and can handle data-dependent control flow. It also handles non-PyTorch function calls, which TorchScript trace treats as constants and can lead to incorrect results.

[ ChatGPT has a long talk explaining what the PyTorch API is, and claims that there is no torch.compile in the PyTorch API. But in fact, we didn't ask what the PyTorch API is, and the  torch.compile  API exists in PyTorch.

Q3: What is TTL in Milvus and how to set it?

ChatGPT answer: In Milvus, TTL (Time To Live) is a function that allows you to set an expiration time for data. When you set a TTL for a collection or partition in Milvus, Milvus will automatically delete any data that has exceeded the specified TTL. To set TTL for a collection or partition in Milvus, you can use  set_collection_ttl or set_partition_ttl API respectively.


Here is an example:

 
 

In this example, we have created a collection and a partition in Milvus. We then set a TTL of 7 days for the collection and partition respectively using the set_collection_ttl and set_partition_ttl APIs. The TTL is specified as a Unix timestamp that is the number of seconds since January 1, 1970. We use the datetime module to add the TTL to the current time to calculate the expiration time.

Note that you need to enable TTL function when starting Milvus. This can be done by setting the TTL_CHECK_INTERVAL parameter in the Milvus configuration file. The default is 60 seconds.

OSSChat Answer: TTL stands for "Time to Live" in Milvus, and it is a feature that sets an expiration time for data in a collection. When data in a collection expires, it is automatically cleaned up and does not participate in searches or queries.

To set a TTL value for a collection in Milvus, you can use  collection.set_properties() a method in Python. For example, to set the TTL value to 1800 seconds (30 minutes), you can use the following code:

collection.set_properties(properties={"collection.ttl.seconds": 1800})

You can also set the TTL value when creating a collection by specifying  collection.ttl.seconds the property in the collection's properties. The value should be specified in seconds and should be 0 or greater. A value of 0 means TTL is disabled.

[ For this question, ChatGPT gave us a plausible answer, even including code snippets. But in fact, this is not the correct answer, but an answer fabricated by ChatGPT. In contrast, OSSChat gave the correct answer - TTL in Milvus is an attribute in the collection settings, and its value is in seconds.

03.

OSSChat trial channel is open

At present, we have opened the OSSChat trial channel, which is free for all users. In the future, while we continue to improve its functions, we will also announce more details about the OSSChat construction process. If you want the open source project you developed to appear in the OSSChat chatbot, you are welcome to copy the link or click【Read the original text】to fill in the application: https://docs.google.com/forms/d/e/1FAIpQLSdXHXCyzs11u7lh2hWkAtWusHtn8fVEZjfrFXTvR7yHhXZDgQ/viewform

Of course, if you have more suggestions on the functions of OSSChat or open source projects, please let us know! Without further ado, OSSChat is waiting for you!

Guess you like

Origin blog.csdn.net/weixin_44839084/article/details/130001629