[Mistral] Add tekken tokenizer detection, conversion, and save utilities
Author: juliendenize
Pull request: yes

<!-- ci-dashboard-badge:start -->
[![CI](https://transformers-ci.lor-e.huggingface.cool/badge/pr?pr=46604)](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=46604)
<!-- ci-dashboard-badge:end -->

# What does this PR do?

Builds on #46603.

- Detect native Mistral checkpoints with tri-state control (`resolve_mistral_format`).
- Build an HF fast tokenizer from a `tekken.json` (`convert_tekken_tokenizer`).
- Reconstruct a `tekken.json` from an HF tokenizer, losslessly (`save_as_tekken`).
- Build a `PixtralProcessor` from native `tekken.json` + `params.json` (`convert_tekken_image_processor`).

Tested with `RUN_SLOW=1 pytest tests/integrations/mistral/test_tokenizer.py` → 38 passed, including a slow real-file `tekken → HF → tekken` round-trip and mistral-common cross-backend equivalence.


## Code Agent Policy

The Transformers repo is currently being overwhelmed by a large number of PRs and issue comments written by
code agents. We are currently bottlenecked by our ability to review and respond to them. As a result, 
**we ask that new users do not submit pure code agent PRs** at this time. 
You may use code agents in drafting or to help you diagnose issues. We'd also ask autonomous "OpenClaw"-like agents
not to open any PRs or issues for the moment.

PRs that appear to be fully agent-written will probably be closed without review, and we may block users who do this
repeatedly or maliciously. 

This is a rapidly-evolving situation that's causing significant shockwaves in the open-source community. As a result, 
this policy is likely to be updated regularly in the near future. For more information, please read [`CONTRIBUTING.md`](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md).

- [x] I confirm that this is not a pure code agent PR.

## Before submitting
- [ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
- [x] Did you read the [contributor guideline](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md#create-a-pull-request),
      Pull Request section?
- [ ] Was this discussed/approved via a Github issue or the [forum](https://discuss.huggingface.co/)? Please add a link
      to it if that's the case.
- [ ] Did you make sure to update the documentation with your changes? Here are the
      [documentation guidelines](https://github.com/huggingface/transformers/tree/main/docs), and
      [here are tips on formatting docstrings](https://github.com/huggingface/transformers/tree/main/docs#writing-source-documentation).
- [x] Did you write any new necessary tests?


## Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

tokenizers: @ArthurZucker and @itazap

Comments:
View the CircleCI Test Summary for this PR:

https://huggingface.co/spaces/transformers-community/circle-ci-viz?pr=46604&sha=9fe4f2

<!-- ci-dashboard-recap:start -->

---

### CI recap

**Dashboard:** [View test results in Grafana](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=46604)
**Latest run:** [29652630303:2](https://github.com/huggingface/transformers/actions/runs/29652974809)
**Result:** `failure` | **Jobs:** 15 | **Tests:** 111,088 | **Failures:** 0 | **Duration:** 12h 12m

<!-- ci-dashboard-recap:end -->