Site icon Use AI the right way

Meta Knowledge: The missing link on how to integrate Reasoning models into enterprise

In this post, we are going to talk about integrating reasoning models like DeepSeek or OpenAI o3 into the company’s business. It is not enough to just deploy one such model and use it. The model is capable of “reasoning” but you still need to give the what to “reason” on and how. This is the role of the meta knowledge.

In this blog post, I will explain reasoning models in a simple way and talk about meta knowledge and why it is absolutely necessary. As usual I will try to be straightforward so let’s get to it.

What are reasoning models?

Reasoning models are a special class of LLMs that are significantly better to handle tasks that needs reasoning. They are based on the following principals (for more detailed explanation, don’t hesitate to read my detailed post on how OpenAI o1 works):

Practical difference with a reasoning model

So what is really the difference between a reasoning model and a normal model for the end users ?

Reasoning models will first generate the plan (or CoT) it needs to answer your query and then will give you the answer. Let’s take an example:

Query: How to merge two dicts ?

Answer:

<think>
Alright, the user just asked, "How to merge 2 dicts?" I need to figure out 
what they mean by that. From our previous conversation, I see they were 
asking about the capital of France, and I answered correctly. Now, their 
follow-up question is about merging two dictionaries.

First, I should consider the context in which they're asking this. Maybe 
they are working on a programming task or dealing with data structures. 
The term "dict" usually refers to dictionaries in Python, so it's likely 
they're coding something and need help combining two dictionaries.

I should explain how to merge two dictionaries by keys in Python. There 
are different methods depending on whether the keys are similar or 
conflicting. If keys overlap, one dictionary will overwrite the other. I 
can outline both scenarios: merging without overwriting and using update 
to overwrite existing keys.

Additionally, I'll provide examples to illustrate each method clearly. 
Using a simple code example would make it easier for them to understand 
how to implement this in their project. It's important to keep the 
explanation straightforward and avoid any jargon that might confuse them.
</think>

To merge two dictionaries in Python (assuming you're working with Python 
dictionaries), there are a few ways to do this, depending on how you want 
to handle overlapping keys:

....

The part between the <think> tags is the plan (or CoT) that it will use to answer the question. In this case, it tried to:

As you can see, this is very similar to how you would try to answer a math problem which is the goal of using math and code focused training dataset. But this has its pros and cons:

Advantages of reasoning models:

Disadvantages of reasoning models:

Reasoning models and agentic

Reasoning models are great because they can handle very complex tasks by creating a plan and decomposing it as smaller tasks. This is perfect for agentic, from the basic of agents to the most complex multi-agent systems.

Multi-agent system

To talk about usage, let’s see some multi-agent architecture:

In all these architecture, you have these 3 principals used:

But reasoning models change the scope of these principals:

So reasoning models will be key to unlock enterprise level agentic systems but only if we tell it how to: this is the role of the Meta Knowledge.

Meta Knowledge: unlocking reasoning models

The goal of a reasoning model is to create a plan to answer a query. In fact, it is creating a strategy to accomplish the given goal. But by itself, it has only the data it has been trained on. So it is very good on math problems, coding and some other things. But what if you ask it questions on your company data ?

Obviously, it will not be able to give a correct answer. But if you give enough data, it could give you an answer. This is actually RAG. But what about when you want an agent that can by itself get the needed data or call this or that api ? Then you will need to give it information on what data is available, how to get it and how to assemble all the different piece of data it founds. You give it knowledge on how to use knowledge –> meta knowledge.

Let’s take an example of a sql database used in a webapp that sell some products. Inside it, you have tables for users, products, prices, contracts and stocks. We want to create an agent system in front of this database so that we can ask things like this: “Compare the sales of from the last 3 months”.

To simplify this example we will say that the sql queries and code generated by the system are always technically correct and that there are not data problems.

So here’s what we should give to this agent so that it can plan effectively:

So here, we just gave the agent the required tools for its tasks but also the necessary business and technical knowledge on how to use them.

What’s more, using the generated plan for this graph, we can simply validate the reasoning behind it. Then, we can modify the given meta-knowledge. The goal is to give as much information as needed so that the agent can correctly devise a plan to finish the task, the same way as we would give all the required information to a newcomer to fulfill a task.

What does Meta Knowledge look like ?

Meta Knowledge are actually a fancy name for the documents that explain how the business of the company works. It is the kind of documents you give to a newcomer for the domain you want to create the agent for. Here’s some type of documents you can use:

But as it is something to give to a model, you need to be careful transform this into a format that can be understood by it. A model only understands images text and code so you need to process all your corpus of documents to generate something the model can use. It should be:

To summarize, it is the kind of document you would give to a newcomer developper that would be tasked to develop the all the features the agent will handle. If you think it would not be enough for the developer, then it would not be enough for the agent.

Conclusion

Reasoning models are type of model that generate plan (CoT) to complete a task before executing it. For that It is trained on specific logic oriented dataset and use longer inference time to first generate the plan. They are well suited for agentic workflow as they can handle far more complexity that normal models. By giving meta knowledge, which is knowledge on how to use business knowledge, data source, internal processes in a well understandable format, it is possible to create higher level agentic system that can by itself generate correct reasoning for high level task. This is really the beginning of the enterprise level agentic system where you will have agent systems that can communicate between themselves and achieve most of the tasks.

Afterwards

I hope you really loved this post. Don’t forget to check my other post as I write a lot of cool posts on practical stuff in AI.
Follow me on and and please leave a comment.

Exit mobile version