Text Generation
Transformers
Safetensors
English
Spanish
mistral
conversational
text-generation-inference
Instructions to use occiglot/occiglot-7b-fr-en-instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use occiglot/occiglot-7b-fr-en-instruct with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="occiglot/occiglot-7b-fr-en-instruct") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("occiglot/occiglot-7b-fr-en-instruct") model = AutoModelForCausalLM.from_pretrained("occiglot/occiglot-7b-fr-en-instruct", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use occiglot/occiglot-7b-fr-en-instruct with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "occiglot/occiglot-7b-fr-en-instruct" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "occiglot/occiglot-7b-fr-en-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/occiglot/occiglot-7b-fr-en-instruct
- SGLang
How to use occiglot/occiglot-7b-fr-en-instruct with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "occiglot/occiglot-7b-fr-en-instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "occiglot/occiglot-7b-fr-en-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "occiglot/occiglot-7b-fr-en-instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "occiglot/occiglot-7b-fr-en-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use occiglot/occiglot-7b-fr-en-instruct with Docker Model Runner:
docker model run hf.co/occiglot/occiglot-7b-fr-en-instruct
|
Download README.md from occiglot/occiglot-7b-fr-en-instruct: direct link, hf CLI and curl.
- Browser
- Download file 8.35 kB
-
https://huggingface.co/occiglot/occiglot-7b-fr-en-instruct/resolve/main/README.md
- Command line
-
hf download hf://occiglot/occiglot-7b-fr-en-instruct/README.md
-
curl -L -o README.md https://huggingface.co/occiglot/occiglot-7b-fr-en-instruct/resolve/main/README.md
8.35 kB
| license: apache-2.0 | |
| language: | |
| - en | |
| - es | |
| pipeline_tag: text-generation | |
|  | |
| # Occiglot-7B-FR-EN-Instruct | |
| > A [polyglot](https://en.wikipedia.org/wiki/Multilingualism#In_individuals) language model for the [Occident](https://en.wikipedia.org/wiki/Occident). | |
| > | |
| **Occiglot-7B-FR-EN-Instruct** is a the instruct version of [occiglot-7b-fr-en](https://huggingface.co/occiglot/occiglot-7b-fr-en), a generative language model with 7B parameters supporting the Spanish and English and trained by the [Occiglot Research Collective](https://occiglot.github.io/occiglot/). | |
| It was trained on 160M tokens of additional multilingual and code instructions. | |
| Note that the model was not safety aligned and might generate problematic outputs. | |
| This is the first release of an ongoing open research project for multilingual language models. | |
| If you want to train a model for your own language or are working on evaluations, please contact us or join our [Discord server](https://discord.gg/wUpvYs4XvM). **We are open for collaborations!** | |
| ### Model details | |
| - **Instruction tuned from:** [occiglot-7b-fr-en](https://huggingface.co/occiglot/occiglot-7b-fr-en) | |
| - **Model type:** Causal decoder-only transformer language model | |
| - **Languages:** English, Spanish, and code. | |
| - **License:** [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0.html) | |
| - **Compute resources:** [DFKI cluster](https://www.dfki.de/en/web) | |
| - **Contributors:** Manuel Brack, Patrick Schramowski, Pedro Ortiz, Malte Ostendorff, Fabio Barth, Georg Rehm, Kristian Kersting | |
| - **Research labs:** [Occiglot](https://occiglot.github.io/occiglot/) with support from [SAINT](https://www.dfki.de/en/web/research/research-departments/foundations-of-systems-ai) and [SLT](https://www.dfki.de/en/web/research/research-departments/speech-and-language-technology) | |
| - **Contact:** [Discord](https://discord.gg/wUpvYs4XvM) | |
| ### How to use | |
| The model was trained using the chatml instruction template. You can use the transformers chat template feature for interaction. | |
| Since the generation relies on some randomness, we | |
| set a seed for reproducibility: | |
| ```python | |
| >>> from transformers import AutoTokenizer, MistralForCausalLM, set_seed | |
| >>> tokenizer = AutoTokenizer.from_pretrained("occiglot/occiglot-7b-es-en-instruct") | |
| >>> model = MistralForCausalLM.from_pretrained('occiglot/occiglot-7b-es-en-instruct') # You may want to use bfloat16 and/or move to GPU here | |
| >>> set_seed(42) | |
| >>> messages = [ | |
| >>> {"role": "system", 'content': 'You are a helpful assistant. Please give short and concise answers.'}, | |
| >>> {"role": "user", "content": "qui est le président français ?"}, | |
| >>> ] | |
| >>> tokenized_chat = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_dict=False, return_tensors='pt',) | |
| >>> set_seed(42) | |
| >>> outputs = model.generate(tokenized_chat.to('cuda'), max_new_tokens=200,) | |
| >>> tokenizer.decode(out[0][len(tokenized_chat[0]):]) | |
| 'Le président français est Emmanuel Macron.' | |
| ``` | |
| ## Dataset | |
| The training data was split evenly amongst French and English based on the total number of tokens. | |
| **English and Code** | |
| - [Open-Hermes-2B](https://huggingface.co/datasets/teknium/OpenHermes-2.5) | |
| **French** | |
| - [Bactrian-X](https://huggingface.co/datasets/MBZUAI/Bactrian-X) (French subset) | |
| - [AI-Society Translated](https://huggingface.co/datasets/camel-ai/ai_society_translated) (French subset) | |
| - [GT-Dorimiti](https://huggingface.co/datasets/Gt-Doremiti/gt-doremiti-instructions) | |
| - [OASST-2](https://huggingface.co/datasets/OpenAssistant/oasst2) (French subset) | |
| - [Aya-Dataset](https://huggingface.co/datasets/CohereForAI/aya_dataset) (French subset) | |
| ## Training settings | |
| - Full instruction fine-tuning on 8xH100. | |
| - 0.6 - 4 training epochs (depending on dataset sampling). | |
| - Framework: [axolotl](https://github.com/OpenAccess-AI-Collective/axolotl) | |
| - Precision: bf16 | |
| - Optimizer: AdamW | |
| - Global batch size: 128 (with 8192 context length) | |
| - Cosine Annealing with Warmup | |
| ## Tokenizer | |
| Tokenizer is unchanged from [Mistral-7B-v0.1](https://huggingface.co/mistralai/Mistral-7B-v0.1). | |
| ## Evaluation | |
| Preliminary evaluation results can be found below. | |
| Please note that the non-English results are based on partially machine-translated datasets and English prompts ([Belebele](https://huggingface.co/datasets/facebook/belebele) and [Okapi framework](https://github.com/nlp-uoregon/Okapi)) and thus should be interpreted with caution, e.g., biased towards English model performance. | |
| Currently, we are working on more suitable benchmarks for Spanish, French, German, and Italian. | |
| <details> | |
| <summary>Evaluation results</summary> | |
| ### English | |
| | | arc_challenge | belebele | hellaswag | mmlu | truthfulqa | avg | | |
| |:-------------------------------------|----------------:|-----------:|------------:|---------:|-------------:|---------:| | |
| | occiglot/occiglot-7b-eu5 | 0.530717 | 0.726667 | 0.789882 | 0.531904 | 0.403678 | 0.59657 | | |
| | occiglot/occiglot-7b-eu5-instruct | 0.558874 | 0.746667 | 0.799841 | 0.535109 | 0.449034 | 0.617905 | | |
| | occiglot/occiglot-7b-de-en | 0.556314 | 0.791111 | 0.803824 | 0.568438 | 0.423251 | 0.628587 | | |
| | occiglot/occiglot-7b-de-en-instruct | 0.604096 | 0.812222 | 0.80004 | 0.570574 | 0.493807 | 0.656148 | | |
| | LeoLM/leo-mistral-hessianai-7b | 0.522184 | 0.736667 | 0.777833 | 0.538812 | 0.429248 | 0.600949 | | |
| | mistralai/Mistral-7B-v0.1 | 0.612628 | 0.844444 | 0.834097 | 0.624555 | 0.426201 | 0.668385 | | |
| | mistralai/Mistral-7B-Instruct-v0.2 | 0.637372 | 0.824444 | 0.846345 | 0.59201 | 0.668116 | 0.713657 | | |
| ### French | |
| | | arc_challenge_fr | belebele_fr | hellaswag_fr | mmlu_fr | truthfulqa_fr | avg | | |
| |:-------------------------------------|-------------------:|--------------:|---------------:|----------:|----------------:|---------:| | |
| | occiglot/occiglot-7b-eu5 | 0.506416 | 0.675556 | 0.712358 | 0.495684 | 0.23507 | 0.525017 | | |
| | occiglot/occiglot-7b-eu5-instruct | 0.541488 | 0.7 | 0.724245 | 0.499122 | 0.306226 | 0.554216 | | |
| | occiglot/occiglot-7b-fr-en | 0.532934 | 0.706667 | 0.718891 | 0.51333 | 0.242694 | 0.542903 | | |
| | occiglot/occiglot-7b-fr-en-instruct | 0.542344 | 0.752222 | 0.72553 | 0.52051 | 0.29479 | 0.567079 | | |
| | OpenLLM-France/Claire-Mistral-7B-0.1 | 0.486741 | 0.694444 | 0.642964 | 0.479566 | 0.271919 | 0.515127 | | |
| | mistralai/Mistral-7B-v0.1 | 0.525235 | 0.776667 | 0.66481 | 0.543121 | 0.280813 | 0.558129 | | |
| | mistralai/Mistral-7B-Instruct-v0.2 | 0.551754 | 0.758889 | 0.67916 | 0.506837 | 0.382465 | 0.575821 | | |
| </details> | |
| ## Acknowledgements | |
| The pre-trained model training was supported by a compute grant at the [42 supercomputer](https://hessian.ai/) which is a central component in the development of [hessian AI](https://hessian.ai/), the [AI Innovation Lab](https://hessian.ai/infrastructure/ai-innovationlab/) (funded by the [Hessian Ministry of Higher Education, Research and the Art (HMWK)](https://wissenschaft.hessen.de) & the [Hessian Ministry of the Interior, for Security and Homeland Security (HMinD)](https://innen.hessen.de)) and the [AI Service Centers](https://hessian.ai/infrastructure/ai-service-centre/) (funded by the [German Federal Ministry for Economic Affairs and Climate Action (BMWK)](https://www.bmwk.de/Navigation/EN/Home/home.html)). | |
| The curation of the training data is partially funded by the [German Federal Ministry for Economic Affairs and Climate Action (BMWK)](https://www.bmwk.de/Navigation/EN/Home/home.html) | |
| through the project [OpenGPT-X](https://opengpt-x.de/en/) (project no. 68GX21007D). | |
| ## License | |
| [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0.html) | |
| ## See also | |
| - https://huggingface.co/collections/occiglot/occiglot-eu5-7b-v01-65dbed502a6348b052695e01 | |
| - https://huggingface.co/NikolayKozloff/occiglot-7b-fr-en-GGUF | |