NovaBit Trading Center

Meet HuggingChat: The Free Open-Source Chatbot That's Ready to Rival ChatGPT

Oct 23, 2024
29
read

You probably know about good ol' ChatGPT. You may know about other nice chatbots like Claude, Reka or Meta AI. But there’s a pretty sweet chatbot that you may have missed: It’s free, open source, and could be more capable than ChatGPT in specific tasks—like image generation, document parsing, video editing and more.

HuggingChat is an open-source alternative to ChatGPT. It comes from the team at Hugging Face, a platform already beloved by open-source AI researchers and developers. If you're looking for a conversational AI without the paywalls, tedious account signups, or worrying about where your data ends up, then HuggingChat is offering just that—and did we mention that it’s free?

Unlike the usual suspects, HuggingChat lets users choose among a diverse pool of open-source AI models for its text generation capabilities. It supports eight of the best open-source LLMs, including Llama 3.1 70B, Nvidia’s Nemotron 70B (which has outperformed GPT-4o and Claude 3.5 Sonnet in some benchmarks), Llama 3.2 Vision, and Cohere’s Command R Plus (which was conceived for conversational interaction and long-context tasks).

Feature face-off: HuggingChat vs. ChatGPT

On the surface, both HuggingChat and ChatGPT appear to offer similar features. They’re designed for everything from casual conversation to deep-dive technical assistance. But dig a little deeper, and you’ll notice some significant differences.

Different models to choose

The first thing I analyzed was how versatile both chatbots are in their text capabilities. With HuggingChat, users can choose among eight different LLMs built by different developers with varying techniques and use cases in mind. GPT-4o may be good at everything, but for these AI models, users can pick a model that is specifically tailored to their needs; for example, Nemotron is great at complex reasoning tasks, whereas Llama 3.1 is better at creative writing.

On the other hand, ChatGPT Plus users can only choose from OpenAI’s models, based on the company’s guidelines and writing style. Right now, users can only choose between GPT-4o—which is more creative—and OpenAI o1, which is more tailored towards reasoning skills.

Assistants: An open-source version of OpenAI’s GPTs

Another comparable feature comes with assistants. Think of them like OpenAI’s custom GPTs, but more flexible. These assistants act as specialized agents for different tasks, from casual conversations to more niche AI queries.

HuggingChat is way more versatile than ChatGPT, and allows you to add tools that are, quite frankly, impressive. You can give your chatbot the ability to browse the web, fetch URLs, generate images using Flux (arguably the top-tier image generator currently available), and even clone voices or parse documents for RAG (retrieval augmented generation).

Meanwhile, ChatGPT’s custom GPTs are great for their simplicity. You can tweak your own personalized AI helper using nothing but simple language, and ChatGPT will customize the agent for you, making it excel in terms of performance.

Given that, you can award this point based on the type of user you are and what you want to do:

  • If you are a noob that wants to use already existing agents, HuggingChat wins, because it has a lot of extremely versatile options.
  • If you are a noob that wants to create your own agent, ChatGPT will win because you can basically talk to your chatbot using natural language, and it will understand what you want the agent to do.
  • If you are an expert user who is capable of coding, but you just want to play around with the custom agents, then there is a pretty big selection available on both HuggingChat and ChatGPT. So it would be a tie in this case.
  • However, technical experts seeking to build custom AI assistants will find a clear advantage in Hugging Face's approach. The open-source framework lets developers modify agent code directly, tweaking specific parameters that ChatGPT doesn’t allow users to modify—like temperature, top-P and top-K parameters, and penalties. While ChatGPT users must rely on prompts and hope the system interprets their intentions correctly, HuggingChat developers can precisely tune their assistants' behavior by accessing and modifying the underlying parameters.

Community tools: The steroids you didn’t know your chatbot needed

Something that sets HuggingChat apart is its Community Tools feature, which significantly enhances its functionality by allowing users to connect various tools directly to the language models (LLMs). This feature enables users to create and utilize tools from Hugging Face spaces—a repository of custom models developed by the community—making it easier to integrate different functionalities into the chat experience.

So, for example, users can configure their chatbot to do a lot of things beyond text generation. There are over 30 different tools for users to enable.

Some of the most interesting include:

  • A URL Fetcher, which retrieves text content from specific URLs
  • A Document Parser, which can parse content from PDF files (which is also called RAG or Retrieval Augmented Generation)
  • An image generator using Flux—which is considered open source MidJourney killer
  • And other delights including an image editor, a voice cloner, a photo background remover, a chart analyzer, a Python code tester and, weirdly, a Roblox 3d Asset Generator.

OpenAI doesn’t behave in the same way. Instead, it embeds everything into its own interface and users can activate specific features based on the model they invoke. For example, they do offer a document parser available with GPT-4o but not when using OpenAI o1, they can generate images thanks to a native integration with DALL-E 3 and they offer a Google Drive integration, which Huggingchat does not support.

In summary, HuggingChat is way more versatile, but OpenAI’s approach offers a more streamlined experience. Users don’t need to activate anything; they just have to ask their chatbot to do something and it will act (or refuse) accordingly.

How to use HuggingChat

Good news: Using HuggingChat is refreshingly simple. It’s free (did we mention this?), it’s open source, and you don’t even have to create an account—though you can if you want to save conversations. Hugging Face claims that an account is required, but we managed to hop in without one, no problem. It's that easy... but it will be somewhat limited in terms of usage.

All you need to do is visit huggingface.co/chat, select a model from a list of open-source AI options, and you’re off to the races. The interface? As intuitive as they come. You’ve got your textbox for input, and that’s about it—no need to navigate clunky menus or hidden features. You type, HuggingChat responds, and the conversation flows effortlessly.

It’s not a bad idea to create an account, though. This will give you access to new models that can run locally if you like playing with open-source models. Also, if you like what you see, then you can get a Pro account for $9 a month—nearly half of a ChatGPT Plus subscription—and support the project. This also opens up new perks such as early access to upcoming features, 5x more usage quota, higher GPU queue priority, some social media perks, and a cute badge to wear proudly on your profile picture.

By default, HuggingChat starts with Llama-3.1-70B-Instruct. To use a different model, click in the wheel next to the tab that says “Current Model.”

It will open up a pop-up window to let users select a new model on the left and then click on a button to start a new chat. This button is located on the right part of the window.

Once the user clicks the button to start a new chat, the pop-up will close and the UI will go back to the initial screen, with the chatbot ready to begin a new interaction.

And that’s just it. Now you can talk to your model

Advanced features: Using and creating assistants

To choose a new Assistant, users must select the option on the bottom-left menu. Once there, a new section will open up, letting users pick their favorite assistant.

Keep in mind that some assistants are not compatible with all the LLMs, so make sure to either explore the assistants and then choose a compatible LLM, or simply pick your model and then select an assistant from the pool of compatible and available options

To do so, simply click in the box below the “Assistants” title and select your LLM.

If you want to go deeper and build your custom assistant—basically an open-source version of a GPT—then simply click the “Create Assistant” button on the top right. This will open up a window similar to OpenAI’s custom GPTs interface:

Here is what each field does:

“Avatar” is a thumbnail that illustrates your character. Unlike with ChatGPT, you cannot ask the chatbot to create one for you, and instead you will need to manually upload a photo.

“Name” is basically was you want your Assistant to be called.

“Description” is a brief explanation of what your Assistant is programmed to do. This will help other users in the community to know if your creation fits their needs.

“Model” is a field that requires some attention. It is basically the LLM that will power your Assistant’s behavior. Make sure to pick a model that is good at the tasks you have in mind for your Assistant—so if you want a coding assistant, then you may want to use something like Nemo. If you want to deal with image analysis, choose Llama 3.1 Vision, or Phi if you just want quick document summaries.

“User Start Messages” are simply examples of how you would start an interaction with your Assistant. For example, you could write things like “Explain this like I’m five,” or “Generate a detailed description of a realistic image based on this setup.”

You can also choose whether to give your Assistant access to the internet or not. This is already an advantage over ChatGPT, because its custom GPTs all work offline.

If you choose to give your Assistant access to the internet, then you have to pick one of three options:

  1. Web Search will basically browse all of the web, like if it was doing a Google search for your task.
  2. Domain-specific will only perform a web search based on certain domains—for example, restricting news results to only Decrypt.co for crypto news if you want only the best information about crypto and emerging technologies.
  3. There is also the option to search for information on Specific Links, so it will retrieve information on a list of URLs provided by the user.

By default, your Assistant is set up to work in offline mode only

“Custom Instruction” or system prompt is the most important part of the configuration, and is where you put all of the information and instructions that will shape your Assistant’s behavior.

Unlike ChatGPT, you can set up other advanced features like the temperature or penalty to determine how creative your model will be while speaking, and how much effort it will dedicate in choosing different words.

Use tools to boost HuggingChat’s potential

The Community Tools are in a league on its own, and give HuggingChat the true advantage over its competition in terms of versatility.

To use a tool, simply click on the button on the bottom left and pick the capabilities you want. These are not model-specific, so don’t worry about which model to choose.

Once you have selected the tool you want, simply go back to the main UI by clicking the button to start a new chat. It’s located on the top left next to the HuggingChat logo.

Now when you click on the available tools, select the tool you want to use for a specific interaction. Once you are done, deselect and keep talking to your AI chatbot as usual. Be aware, some tools take some time—maybe too much—and some tools may have bugs. So be prepared for potential hitches.

Our verdict

Unlike its competitors, HuggingChat doesn’t lock features behind a paywall. Whether you’re a developer or just someone who wants to avoid ChatGPT’s fees, HuggingChat offers a compelling package with none of the corporate fluff. It's free, flexible, and easy to use once you get the hang of it—a no-brainer for anyone who wants AI without the headache of being controlled or constrained by closed software.

However, just like all things open source, you must be prepared to get your hands dirty and deal with it.

HuggingChat is a solid competitor. If you’re tired of locked features and outdated training data, then give this open-source alternative a try. It may not beat Claude or ChatGPT in creativity or simplicity, but it’s a good alternative to follow and study. (Also, did we mention it’s free?)

Edited by Andrew Hayward