{
  "cells": [
    {
      "cell_type": "markdown",
      "id": "ef283f37-0ad4-48c7-bb92-8a09baaae6e5",
      "metadata": {},
      "source": [
        "---\n",
        "title: \"Organiser et rechercher par mots-clés liés à l'emploi\"\n",
        "description: \"Attribuez des balises à vos tâches, ajoutez et modifiez des balises, et effectuez des recherches par balise pour mieux organiser vos expériences.\"\n",
        "---\n",
        "\n",
        "<span id=\"organize-and-search-by-job-tags\" />\n",
        "\n",
        "# Organiser et rechercher par mots-clés liés à l'emploi\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "f4471d6b-dc12-486c-95de-22ac12e367d2",
      "metadata": {
        "tags": [
          "version-info"
        ]
      },
      "source": [
        "{/*\n",
        "  DO NOT EDIT THIS CELL!!!\n",
        "  This cell's content is generated automatically by a script. Anything you add\n",
        "  here will be removed next time the notebook is run. To add new content, create\n",
        "  a new cell before or after this one.\n",
        "  */}\n",
        "\n",
        "<Accordion>\n",
        "  <AccordionItem title=\"Versions de package\">\n",
        "    Le code de cette page a été développé en tenant compte des exigences suivantes.\n",
        "    Nous recommandons d'utiliser ces versions ou des versions plus récentes.\n",
        "\n",
        "    ```\n",
        "    qiskit[all]~=2.3.1\n",
        "    qiskit-ibm-runtime~=0.45.1\n",
        "    ```\n",
        "  </AccordionItem>\n",
        "</Accordion>\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "ec8277ad-1811-4318-8282-84d6d282bb17",
      "metadata": {},
      "source": [
        "Ce guide explique comment ajouter et mettre à jour des étiquettes de poste, ainsi que comment effectuer des recherches par étiquette de poste, afin que vous puissiez mieux organiser, suivre et comprendre vos expériences.\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "59e38320-db15-4566-b262-40d4fcf19b82",
      "metadata": {},
      "source": [
        "<span id=\"assign-tags\" />\n",
        "\n",
        "## Affecter des balises\n",
        "\n",
        "Vous pouvez attribuer une ou plusieurs balises à vos travaux lorsque vous les exécutez afin de pouvoir les filtrer ultérieurement en fonction d'une balise. Vous pouvez utiliser des étiquettes de travail pour étiqueter des réglages particuliers d'atténuation des erreurs, des paramètres de circuit, etc.\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 1,
      "id": "74a7a1ea-f2ae-4b8c-9499-af52840c2e74",
      "metadata": {},
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "['experiment-2025', 'sampler-example']\n"
          ]
        }
      ],
      "source": [
        "from qiskit_ibm_runtime import QiskitRuntimeService, Sampler\n",
        "from qiskit import QuantumCircuit\n",
        "from qiskit.transpiler import generate_preset_pass_manager\n",
        "\n",
        "service = QiskitRuntimeService()\n",
        "backend = service.least_busy(simulator=False, operational=True)\n",
        "\n",
        "qc = QuantumCircuit(2)\n",
        "qc.h(0)\n",
        "qc.cx(0, 1)\n",
        "qc.measure_all()\n",
        "\n",
        "sampler = Sampler(backend)\n",
        "\n",
        "pm = generate_preset_pass_manager(backend=backend, optimization_level=1)\n",
        "isa_circuit = pm.run(qc)\n",
        "\n",
        "# Assign tags before executing\n",
        "sampler.options.environment.job_tags = [\"experiment-2025\", \"sampler-example\"]\n",
        "\n",
        "# Submit\n",
        "job = sampler.run([isa_circuit])\n",
        "\n",
        "print(service.job(job.job_id()).tags)"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "2b29f9da-3fca-4ffc-b4b2-6f0d130b5b23",
      "metadata": {},
      "source": [
        "<span id=\"add-and-update-tags\" />\n",
        "\n",
        "## Ajouter et mettre à jour des balises\n",
        "\n",
        "Vous pouvez ajouter des balises après avoir soumis un travail à l'aide de la méthode `update_tags()` . Cette méthode écrase les balises actuelles. Par conséquent, si vous avez déjà attribué des balises à un travail et que vous souhaitez en ajouter d'autres, veillez à réattribuer les balises d'origine.\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "id": "205ceaf7-f79d-4452-b4b0-9688e39a4564",
      "metadata": {},
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "['sampler-example', '127-qubit', 'experiment-2025']\n"
          ]
        }
      ],
      "source": [
        "# Add a new tag while keeping the previously assigned tags\n",
        "job.update_tags([\"experiment-2025\", \"sampler-example\", \"127-qubit\"])\n",
        "\n",
        "# Confirm updated tags\n",
        "print(job.tags)"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "9e2e8c4a-5fbb-4a15-ab75-ddb61e35b65e",
      "metadata": {},
      "source": [
        "<span id=\"retrieve-jobs-by-tag\" />\n",
        "\n",
        "## Récupérer les tâches par balise\n",
        "\n",
        "Affiche une liste de travaux avec certaines étiquettes comme suit :\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 3,
      "id": "b6db503e-46ef-406e-9420-ef73446df564",
      "metadata": {},
      "outputs": [
        {
          "data": {
            "text/plain": [
              "[<RuntimeJobV2('d76cmj5bjrds73edf2og', 'sampler')>,\n",
              " <RuntimeJobV2('d6r5u84u243c73a11mug', 'sampler')>,\n",
              " <RuntimeJobV2('d6hugq2thhns7392lovg', 'sampler')>,\n",
              " <RuntimeJobV2('d68n7qtbujdc73d1b3vg', 'sampler')>,\n",
              " <RuntimeJobV2('d674nppv6o8c73d514fg', 'sampler')>,\n",
              " <RuntimeJobV2('d61mt5bc4tus73fcf3ng', 'sampler')>,\n",
              " <RuntimeJobV2('d61lhfqo8gvs73f15d30', 'sampler')>,\n",
              " <RuntimeJobV2('d5vftt1mvbjc73acdgpg', 'sampler')>,\n",
              " <RuntimeJobV2('d5k96nv853es738djj30', 'sampler')>,\n",
              " <RuntimeJobV2('d5b1s2rht8fs73a66r80', 'sampler')>]"
            ]
          },
          "execution_count": 3,
          "metadata": {},
          "output_type": "execute_result"
        }
      ],
      "source": [
        "# List jobs with a specific tag or set of tags\n",
        "\n",
        "service.jobs(job_tags=[\"experiment-2025\", \"sampler-example\"])"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "id": "a1b8767d",
      "source": "© IBM Corp., 2017-2026"
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "Python 3",
      "language": "python",
      "name": "python3"
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 4
}