Exploring DeepSeek-R1's Agentic Capabilities Through Code Actions
I ran a fast experiment examining how DeepSeek-R1 performs on agentic tasks, despite not supporting tool use natively, and disgaeawiki.info I was rather satisfied by initial results. This experiment runs DeepSeek-R1 in a single-agent setup, where the design not just prepares the actions however also formulates the actions as executable Python code. On a subset1 of the GAIA validation split, DeepSeek-R1 surpasses Claude 3.5 Sonnet by 12.5% outright, from 53.1% to 65.6% appropriate, and other designs by an even bigger margin:
The experiment followed design use standards from the DeepSeek-R1 paper and the design card: Don't use few-shot examples, avoid adding a system prompt, and pattern-wiki.win set the temperature to 0.5 - 0.7 (0.6 was utilized). You can discover further evaluation details here.
Approach
DeepSeek-R1's strong coding abilities enable it to serve as a representative without being clearly trained for tool usage. By permitting the design to produce actions as Python code, it can flexibly interact with environments through code execution.
Tools are executed as Python code that is consisted of straight in the timely. This can be a basic function meaning or a module of a bigger plan - any legitimate Python code. The model then produces code actions that call these tools.
Results from carrying out these actions feed back to the design as follow-up messages, driving the next actions until a final response is reached. The agent structure is a simple iterative coding loop that moderates the conversation between the model and its environment.
Conversations
DeepSeek-R1 is utilized as chat model in my experiment, where the model autonomously pulls additional context from its environment by utilizing tools e.g. by utilizing a search engine or bbarlock.com bring data from web pages. This drives the conversation with the environment that continues up until a final answer is reached.
In contrast, o1 models are understood to perform badly when used as chat designs i.e. they don't attempt to pull context throughout a discussion. According to the connected short article, opensourcebridge.science o1 models carry out best when they have the full context available, with clear directions on what to do with it.
Initially, I likewise attempted a complete context in a single timely method at each step (with outcomes from previous steps consisted of), however this resulted in significantly lower ratings on the GAIA subset. Switching to the conversational method explained above, I was able to reach the reported 65.6% efficiency.
This raises an intriguing question about the claim that o1 isn't a chat model - possibly this observation was more pertinent to older o1 designs that lacked tool usage abilities? After all, isn't tool use support an important system for allowing models to pull extra context from their environment? This conversational technique certainly appears efficient for archmageriseswiki.com DeepSeek-R1, though I still need to carry out similar try outs o1 designs.
Generalization
Although DeepSeek-R1 was mainly trained with RL on mathematics and coding tasks, it is remarkable that generalization to agentic jobs with tool use by means of code actions works so well. This ability to generalize to agentic jobs advises of recent research study by DeepMind that reveals that RL generalizes whereas SFT remembers, although generalization to tool use wasn't investigated because work.
Despite its ability to generalize to tool use, DeepSeek-R1 typically produces really long thinking traces at each action, compared to other designs in my experiments, restricting the usefulness of this design in a single-agent setup. Even easier tasks sometimes take a very long time to complete. Further RL on agentic tool usage, be it through code actions or not, could be one alternative to enhance performance.
Underthinking
I also observed the underthinking phenomon with DeepSeek-R1. This is when a thinking model often changes in between various reasoning thoughts without sufficiently exploring promising courses to reach a correct option. This was a major factor for overly long reasoning traces produced by DeepSeek-R1. This can be seen in the taped traces that are available for download.
Future experiments
Another typical application of thinking models is to utilize them for planning only, while using other models for creating code actions. This could be a possible new feature of freeact, if this separation of functions shows beneficial for more complex jobs.
I'm also curious about how thinking designs that already support tool use (like o1, o3, ...) perform in a setup, with and without generating code actions. Recent developments like OpenAI's Deep Research or Hugging Face's open-source Deep Research, which also utilizes code actions, wavedream.wiki look interesting.