Tips: Dify is currently in the beta preview stage. If there are any inconsistencies between the documentation and the product, please refer to the actual product experience.
If you are amazed and excited by the rapid development of LLM technologies such as GPT-4 and can't wait to use them for something useful! But you have all these confusing questions in your mind:
How do I "train" a model based on my content?
How do I let AI know about things that happened after 2021?
How do I prevent AI from babbling nonsense with users?
What do fine-tuning and embedding mean?
Well, Dify is just what you need.
Dify aims to enable developers (and even non-developers) to quickly build useful applications based on large language models, ensuring they are visual, operable, and improvable.
"We shape our tools, and then our tools shape us." - Marshall McLuhan
You can quickly build a Web App using Dify, and the generated frontend code can be hosted on Dify. If you want to develop further based on this Web App, you can obtain these templates from GitHub and deploy them anywhere (e.g., Vercel or your server). Alternatively, you can develop your own Web frontend, mobile App, etc., based on the WebAPI, saving you backend development work.
Moreover, the core concept of Dify is to create, configure, and improve your application in a visual interface. Application development based on LLM has a continuous improvement lifecycle, and you may need to make AI give correct answers based on your content, improve AI's accuracy and narrative style, or even download a subtitle from YouTube as context.
This process will involve some logic design, context enhancement, data preparation, and other efforts that may be challenging without the right tools... We call this process LLMOps.
Check out these applications created with Dify
Quickly create applications in the cloud
Install Dify on your server
"Only a few companies will have the budget to build and manage large language models (LLM) like GPT-3, but there will be many billion-dollar 'second layer' companies that emerge over the next decade."———Sam Altman
Just as the LLM technology is rapidly evolving, Dify is a constantly improving product, and there may be some discrepancies between the content of this document and the actual product. You can share your thoughts with us on GitHub or Discord.
Q: What can I do with Dify? A: Dify is a simple yet powerful natural language programming tool. You can use it to build commercial-grade applications, personal assistants. If you want to develop applications yourself, Dify can also save you the backend work of accessing OpenAI, but using our gradually provided high visual operation ability, you can continuously improve and train your GPT model.
Q: How do I use Dify to train my own models? A: A valuable application consists of Prompt Engineering, Context Enhancement and Fine-tuning. We have created a hybrid programming method that combines prompts and programming languages (similar to a template engine). You can easily complete long text embedding or grab the subtitles of a YouTube video entered by the user - these will be used as context submitted to LLMs for calculation. We pay great attention to the operability of the application. The data generated by your users during the use of the App can be analyzed, labeled and continuously trained. The above steps may consume a lot of your time without good tool support.
Q: What do I need to prepare to create my own application? A: You choose a model provider such as OpenAI. Our cloud version has a built-in trial model of GPT-4. You can fill in your own API key. Then you can create an app based on prompts or your own context.
Q: Can applications built with Dify maintain conversations? A: Yes, if you create a conversational application, it has built-in session saving capabilities, supported in both generated web apps and APIs.
Q: What's the difference between LLMOps and MLOps? A: In the past, MLOps allowed developers to train models from scratch, while LLMOps developed AI-native applications based on powerful models such as GPT-4. You can refer to this article.
Q: What interface languages are provided? A: English and Chinese are currently supported. You can contribute language packs for us.
Q: What is LangGenius? A: LangGenius was the product name before Dify's official launch. We are still updating all the documentation. The name "Dify" is derived from the two words "Define" and "Modify". It represents the vision to help developers continuously improve their AI applications. "Dify" can be understood as "Do it for you".