code: def test_batch_update():
      # Upsert and delete points
      response = request_with_validation(
          api="/collections/{collection_name}/points/batch",
          method="POST",
          path_params={"collection_name": collection_name},
          body={
              "operations": [
                  {
                      "upsert": {
                          "points": [
                              {
                                  "id": 7,
                                  "vector": {
                                      "image": [1.0, 0.0, 9.0, 1.0],
                                  },
                                  "payload": {},
                              },
                          ]
                      }
                  },
                  {
                      "upsert": {
                          "points": [
                              {
                                  "id": 8,
                                  "vector": {
                                      "image": [7.0, 1.0, 6.0, 9.0],
                                  },
                                  "payload": {},
                              },
                          ]
                      }
                  },
                  {"delete": {"points": [8]}},
                  {
                      "upsert": {
                          "points": [
                              {
                                  "id": 7,
                                  "vector": {
                                      "image": [9.0, 9.0, 3.0, 0.0],
                                      "text": [
                                          8.0,
                                          1.0,
                                          2.0,
                                          5.0,
                                          2.0,
                                          7.0,
                                          1.0,
                                          6.0,
                                      ],
                                  },
                                  "payload": {},
                              },
                          ]
                      }
                  },
              ]
          },
          query_params={"wait": "true"},
      )
      assert response.ok
  
      assert_points(
          [
              {
                  "id": 7,
                  "vector": {
                      "image": [9.0, 9.0, 3.0, 0.0],
                      "text": [8.0, 1.0, 2.0, 5.0, 2.0, 7.0, 1.0, 6.0],
                  },
                  "payload": {},
              }
          ],
          nonexisting_ids=[8],
          with_vectors=True,
      )
  
      # Update vector
      response = request_with_validation(
          api="/collections/{collection_name}/points/batch",
          method="POST",
          path_params={"collection_name": collection_name},
          body={
              "operations": [
                  {
                      "update_vectors": {
                          "points": [
                              {
                                  "id": 7,
                                  "vector": {
                                      "image": [2.0, 6.0, 3.0, 2.0],
                                      "text": [
                                          5.0,
                                          7.0,
                                          0.0,
                                          8.0,
                                          2.0,
                                          7.0,
                                          1.0,
                                          6.0,
                                      ],
                                  },
                              },
                          ]
                      }
                  },
                  {
                      "update_vectors": {
                          "points": [
                              {
                                  "id": 7,
                                  "vector": {
                                      "image": [0.0, 3.0, 1.0, 8.0],
                                  },
                              },
                          ]
                      }
                  },
              ]
          },
          query_params={"wait": "true"},
      )
      assert response.ok
  
      assert_points(
          [
              {
                  "id": 7,
                  "vector": {
                      "image": [0.0, 3.0, 1.0, 8.0],
                      "text": [5.0, 7.0, 0.0, 8.0, 2.0, 7.0, 1.0, 6.0],
                  },
                  "payload": {},
              }
          ],
          nonexisting_ids=[8],
          with_vectors=True,
      )
  
      # Upsert point and delete vector
      response = request_with_validation(
          api="/collections/{collection_name}/points/batch",
          method="POST",
          path_params={"collection_name": collection_name},
          body={
              "operations": [
                  {
                      "upsert": {
                          "points": [
                              {
                                  "id": 9,
                                  "vector": {
                                      "image": [5.0, 5.0, 3.0, 6.0],
                                      "text": [
                                          8.0,
                                          4.0,
                                          7.0,
                                          3.0,
                                          3.0,
                                          8.0,
                                          9.0,
                                          0.0,
                                      ],
                                  },
                                  "payload": {},
                              },
                          ]
                      }
                  },
                  {
                      "upsert": {
                          "points": [
                              {
                                  "id": 10,
                                  "vector": {
                                      "image": [2.0, 9.0, 1.0, 4.0],
                                      "text": [
                                          1.0,
                                          5.0,
                                          5.0,
                                          6.0,
                                          9.0,
                                          3.0,
                                          3.0,
                                          2.0,
                                      ],
                                  },
                                  "payload": {},
                              },
                          ]
                      }
                  },
                  {
                      "delete_vectors": {
                          "points": [7, 10],
                          "vector": ["text"],
                      }
                  },
                  {
                      "delete_vectors": {
                          "points": [9, 10],
                          "vector": ["image"],
                      }
                  },
              ]
          },
          query_params={"wait": "true"},
      )
      assert response.ok
  
      assert_points(
          [
              {
                  "id": 7,
                  "vector": {
                      "image": [0.0, 3.0, 1.0, 8.0],
                  },
                  "payload": {},
              },
              {
                  "id": 9,
                  "vector": {
                      "text": [8.0, 4.0, 7.0, 3.0, 3.0, 8.0, 9.0, 0.0],
                  },
                  "payload": {},
              },
              {
                  "id": 10,
                  "vector": {},
                  "payload": {},
              },
          ],
          nonexisting_ids=[8],
          with_vectors=True,
      )
  
imports: import pytest
  from .helpers.helpers import request_with_validation
  from .helpers.collection_setup import multivec_collection_setup, drop_collection
  from operator import itemgetter
label_desc: Use image node_id 3 for calling a global function with example usage: test_batch_update() without return types