Open O1: A Model Matching Proprietary Power with Open-Source Innovation Homepage:OpenO1 Huggingface: OpenO1 Discord:OpenO1-Discord Slack:Op…
Open O1: A Model Matching Proprietary Power with Open-Source Innovation Homepage:OpenO1 Huggingface: OpenO1 Discord:OpenO1-Discord Slack:Op…
Homepage:OpenO1 Huggingface: OpenO1 Discord:OpenO1-Discord Slack:OpenO1-Slack
Our Open O1 aims to match the powerful capabilities of the proprietary OpenAI O1 model, empowering the community with advanced open-source alternatives. Our model has been developed by curating a set SFT data for CoT Activation, which was then used to train both LLaMA and Qwen models. This training approach has endowed the smaller models with enhanced long-reasoning and problem-solving capabilities.
As the Open O1 project progresses, we will continue to push the boundaries of what's possible with large language models. Our vision is to create a model that not only achieves O1-like performance but also leads the way in test-time scaling, making advanced AI capabilities accessible to all. Through community-driven development and a commitment to ethical practices, Open O1 will be a cornerstone in the advancement of AI, ensuring that the future of technology is open and beneficial to all.
Welcome to experience our model! Note: The model deployed on HuggingFace may have undergone quantization, which can lead to some performance degradation. If you'd like to experience the original performance of the model, you're encouraged to deploy it on your own infrastructure.
Input
How many letters 'r' in the word 'strawberry'?…Output
There are three letters 'r' in the word 'strawberry'.[11/21/2024] OpenO1 SFT data for CoT Activation release!Welcome to download on OpenO1-SFT data
[10/09/2024] OpenO1 model-v0.1 release!
[10/05/2024] OpenO1 initial release!
| Section | Description |
|---|---|
| Model Deployments & Chat Templates | Instructions and examples for deploying models and using chat templates effectively. |
| ✍ Example Demonstrations | Showcase of various use cases and practical demonstrations of the model's capabilities. |
| System Performance | Analysis of system performance metrics, benchmarking results, and optimization strategies. |
| Training Details | An overview of the training process for Open O1, including datasets used, training methodologies, and any relevant hyperparameters. |
| ❓ FAQ | Answers to frequently asked questions. |
| ⚠️ Limitations | A discussion of the limitations of the models involved, including known issues, performance constraints, and areas for future improvement. |
To quickly get started with Open O1, we provide some steps for you to enjoy our model.
git clone https://github.com/OpenSource-O1/Open-O1.gitInstall the dependencies listed in Deployment/requirements.txt.
Execute the script below.
python Deployment/app.pyThe chat templates of Open O1 is following LLaMA3.1's. The details can be obtained in chat-templates.
dialog = [
{"role": "user", "content": "What's the weather like today?"},
{"role": "assistant", "content": "It's sunny and warm, around 75°F."}
]After using chat templates to process, the converted result is as follows:
user
What's the weather like today?assistant
It's sunny and warm, around 75°F.assistantThe following table provides a comprehensive comparison of the performance between llama3.1-8b-instruct and our model across multiple benchmarks. These evaluations were conducted in a zero-shot setting, meaning the models were tested without task-specific fine-tuning, highlighting their ability to generalize across diverse tasks. These benchmarks assess various aspects of reasoning, knowledge, and understanding in different domains, offering a clear indication of how each model handles complex tasks without prior exposure or specific task-related training. Our model consistently demonstrates competitive or superior performance, showcasing advancements in areas critical to reasoning, mathematical understanding, and general AI capabilities.
| Model | GSM8K | MATH | MMLU | Hellaswag | ARC-C | BBH |
|---|---|---|---|---|---|---|
| llama3.1-8b-instruct | 84.00 | 47.42 | 67.95 | 68.43 | 83.87 | 53.64 |
| Ours(OpenO1-llama-8B-v0.1) | 85.82 | 52.88 | 70.45 | 67.77 | 86.52 | 58.43 |
The results highlights our model's superior performance in most benchmarks, with notable improvements in MATH, MMLU, ARC-C, and BBH.
The training process for Open O1 utilizes the configuration settings from Llama Factory to optimize performance. This section includes details on the datasets used, training methodologies, and relevant hyperparameters.
stage: sft
do_train: true
finetuning_type: full
deepspeed: ds_z3_config.jsondataset: o1_style_dataset
template: llama3/qwen
cutoff_len: 4096
overwrite_cache: true
preprocessing_num_workers: 16logging_steps: 10
save_steps: 1000
plot_loss: true
overwrite_output_dir: trueper_device_train_batch_size: 4
gradient_accumulation_steps: 2
learning_rate: 1.0e-5
num_train_epochs: 3.0
lr_scheduler_type: cosine
warmup_ratio: 0.1
bf16: true
ddp_timeout: 180000000val_size: 0.1
per_device_eval_batch_size: 1
eval_strategy: steps
eval_steps: 200Summarizing and updating...
Open O1 is currently in its early stages of development. Open O1 primarily exhibits o1-like reasoning characteristics and broad search thinking capabilities. However, there is still significant progress to be made before it fully achieves O1 capabilities.
Learning to Reason with LLMs – A detailed blog post by OpenAI discussing methods to enhance reasoning abilities in large language models.
OpenAI O1 Mini: Advancing Cost-Efficient Reasoning – An OpenAI blog that introduces the O1 Mini model and explores its efficiency in reasoning tasks.
Awesome-LLM-Strawberry – A curated list of resources and tools related to large language models (LLMs) and reasoning capabilities, including O1.
| Task | Estimated Schedule |
|---|---|
| Releasing our first version of SFT data that comprises o1-style thinking process | 1~2 weeks |
| Reward model (and the corresponding data) for judging the thinking process of each model | 2~3 weeks |
| Training infrastructure and pipeline for our o1-style data (both SFT and RLHF) | 1 month |
| A new chatbot arena for evaluating and comparing the thinking process of different models | 1 month |
| Reproducing the two o1 scaling laws both at training time (RLHF) and inference time | 2~3 months |
We have not yet reached O1 level, but we are on the way. The first version has shown performance improvements on LLaMA and Qwen, with some promising data, but the style is still very close to O1. This project is non-profit. We welcome the entire community to join us in this journey. Moving forward, we will open source all the code and materials from the development process.
If you find our model, data, code useful, welcome to cite our paper
@article{
supplement,
title={},
author={OpenO1 Team},
journal={},
url={},
year={}
}This repo benefits from LLaMA-Factory, OpenRLHF, awesome-o1. Thanks for their wonderful and solid works.
If you have any questions, please submit them through GitHub Issues.
strawberry里有几个r?
Alright, I need to determine how many 'r's are in the word "strawberry." Let me start by carefully examining each letter in the word to identify all instances of the letter 'r'.
First, I'll list out the letters of
No open issues yet, or sync has not completed.