helloadhavan/github_issues huggingface dataset:
Repository: huggingface/transformers
Pull request: Inclusion of process_group in the gather_full_tensor function in tensor_parallel.py

# What does this PR do?

It fixes minor issue in the gather_full_tensor function. The existing implementation tries to perform all_gather across all the ranks of distributed training. But when we talk about the case of TP+DP then we only need to perform all_gather across TP ranks, not the DP ranks. This change makes use of group argument in dist.all_gather API of pytorch to perform it correctly.

## Before submitting
- [ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
- [ ] 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).
- [ ] Did you write any new necessary tests?

CC: @SunMarc @ArthurZucker @ydshieh 

Changed files:
filename: src/transformers/integrations/tensor_parallel.py
patch: @@ -1156,14 +1156,16 @@ def gather_full_tensor(local_tensor: torch.Tensor, shard_dim: int, device_mesh)
         The full reconstructed tensor (same on all ranks)
     """
     world_size = device_mesh.size()
+    # In case of TP+DP configuration, the TP group should be used for gathering, not the full DP group
+    process_group = device_mesh.get_group("tp") if "tp" in device_mesh.mesh_dim_names else None
 
     # Normalize negative dimension
     if shard_dim < 0:
         shard_dim = local_tensor.ndim + shard_dim
 
     # Gather all shards
     gathered_tensors = [torch.empty_like(local_tensor) for _ in range(world_size)]
-    dist.all_gather(gathered_tensors, local_tensor.contiguous())
+    dist.all_gather(gathered_tensors, local_tensor.contiguous(), group=process_group)
 
     # Concatenate along the shard dimension
     return torch.cat(gathered_tensors, dim=shard_dim)
Repository: ollama/ollama
Pull request: discovery: fix cudart driver version

We prefer the nvcuda library, which reports driver versions. When we dropped cuda v11, we added a safety check for too-old drivers.  What we missed was the cudart fallback discovery logic didn't have driver version wired up.  This fixes cudart discovery to expose the driver version as well so we no longer reject all GPUs if nvcuda didn't work.

Fixes #11519 

Changed files:
filename: discover/gpu.go
patch: @@ -263,6 +263,8 @@ func GetGPUInfo() GpuInfoList {
 				var driverMinor int
 				if cHandles.cudart != nil {
 					C.cudart_bootstrap(*cHandles.cudart, C.int(i), &memInfo)
+					driverMajor = int(cHandles.cudart.driver_major)
+					driverMinor = int(cHandles.cudart.driver_minor)
 				} else {
 					C.nvcuda_bootstrap(*cHandles.nvcuda, C.int(i), &memInfo)
 					driverMajor = int(cHandles.nvcuda.driver_major)

filename: discover/gpu_info_cudart.c
patch: @@ -69,18 +69,15 @@ void cudart_init(char *cudart_lib_path, cudart_init_resp_t *resp) {
   }
 
   int version = 0;
-  cudartDriverVersion_t driverVersion;
-  driverVersion.major = 0;
-  driverVersion.minor = 0;
 
   // Report driver version if we're in verbose mode, ignore errors
   ret = (*resp->ch.cudaDriverGetVersion)(&version);
   if (ret != CUDART_SUCCESS) {
     LOG(resp->ch.verbose, "cudaDriverGetVersion failed: %d\n", ret);
   } else {
-    driverVersion.major = version / 1000;
-    driverVersion.minor = (version - (driverVersion.major * 1000)) / 10;
-    LOG(resp->ch.verbose, "CUDA driver version: %d-%d\n", driverVersion.major, driverVersion.minor);
+    resp->ch.driver_major = version / 1000;
+    resp->ch.driver_minor = (version - (resp->ch.driver_major * 1000)) / 10;
+    LOG(resp->ch.verbose, "CUDA driver version: %d-%d\n", resp->ch.driver_major, resp->ch.driver_minor);
   }
 
   ret = (*resp->ch.cudaGetDeviceCount)(&resp->num_devices);

filename: discover/gpu_info_cudart.h
patch: @@ -29,11 +29,6 @@ typedef struct cudartMemory_st {
   size_t used;
 } cudartMemory_t;
 
-typedef struct cudartDriverVersion {
-  int major;
-  int minor;
-} cudartDriverVersion_t;
-
 typedef struct cudaUUID {
     unsigned char bytes[16];
 } cudaUUID_t;
@@ -123,6 +118,8 @@ typedef struct cudaDeviceProp {
 typedef struct cudart_handle {
   void *handle;
   uint16_t verbose;
+  int driver_major;
+  int driver_minor;
   cudartReturn_t (*cudaSetDevice)(int device);
   cudartReturn_t (*cudaDeviceSynchronize)(void);
   cudartReturn_t (*cudaDeviceReset)(void);
Repository: ggml-org/llama.cpp
Pull request: common : fix **/x glob matching

## Overview

Globbing `**/x` was broken, basically matching `**/*x`.

# Requirements

<!-- IMPORTANT: Please do NOT delete this section, otherwise your PR may be rejected -->

- I have read and agree with the [contributing guidelines](https://github.com/ggml-org/llama.cpp/blob/master/CONTRIBUTING.md)
- AI usage disclosure: nix

Changed files:
filename: common/common.cpp
patch: @@ -703,7 +703,6 @@ static inline bool glob_match(const char * pattern, const char * str) {
     }
     if (pattern[0] == '*' && pattern[1] == '*') {
         const char * p = pattern + 2;
-        if (*p == '/') p++;
         if (glob_match(p, str)) return true;
         if (*str != '\0') return glob_match(pattern, str + 1);
         return false;
Repository: facebook/react
Pull request: Add forwards fill mode to animations in view transition fixture

It turns out that View Transitions can sometimes overshoot and then we need to ensure it fills. It can otherwise sometimes flash in Chrome.

This is something users might hit as well.

Changed files:
filename: fixtures/view-transition/src/components/Transitions.module.css
patch: @@ -56,10 +56,10 @@
 }
 
 ::view-transition-new(.enter-slide-right):only-child {
-  animation: enter-slide-right ease-in 0.25s;
+  animation: enter-slide-right ease-in 0.25s forwards;
 }
 ::view-transition-old(.exit-slide-left):only-child {
-  animation: exit-slide-left ease-in 0.25s;
+  animation: exit-slide-left ease-in 0.25s forwards;
 }
 
 :root:active-view-transition-type(navigation-back) {
Repository: ollama/ollama
Pull request: int: adjust a few models for integration tests


Changed files:
filename: integration/concurrency_test.go
patch: @@ -4,7 +4,9 @@ package integration
 
 import (
 	"context"
+	"fmt"
 	"log/slog"
+	"math"
 	"os"
 	"strconv"
 	"sync"
@@ -21,7 +23,7 @@ func TestMultiModelConcurrency(t *testing.T) {
 	var (
 		req = [2]api.GenerateRequest{
 			{
-				Model:     "llama3.2:1b",
+				Model:     smol,
 				Prompt:    "why is the ocean blue?",
 				Stream:    &stream,
 				KeepAlive: &api.Duration{Duration: 10 * time.Second},
@@ -30,7 +32,7 @@ func TestMultiModelConcurrency(t *testing.T) {
 					"temperature": 0.0,
 				},
 			}, {
-				Model:     "tinydolphin",
+				Model:     "qwen3:0.6b",
 				Prompt:    "what is the origin of the us thanksgiving holiday?",
 				Stream:    &stream,
 				KeepAlive: &api.Duration{Duration: 10 * time.Second},
@@ -132,34 +134,38 @@ func TestMultiModelStress(t *testing.T) {
 			size: 2876 * format.MebiByte,
 		},
 		{
-			name: "phi",
-			size: 2616 * format.MebiByte,
+			name: "qwen3:0.6b",
+			size: 1600 * format.MebiByte,
 		},
 		{
 			name: "gemma:2b",
 			size: 2364 * format.MebiByte,
 		},
 		{
-			name: "stable-code:3b",
-			size: 2608 * format.MebiByte,
+			name: "deepseek-r1:1.5b",
+			size: 2048 * format.MebiByte,
 		},
 		{
 			name: "starcoder2:3b",
 			size: 2166 * format.MebiByte,
 		},
 	}
 	mediumModels := []model{
+		{
+			name: "qwen3:8b",
+			size: 6600 * format.MebiByte,
+		},
 		{
 			name: "llama2",
 			size: 5118 * format.MebiByte,
 		},
 		{
-			name: "mistral",
-			size: 4620 * format.MebiByte,
+			name: "deepseek-r1:7b",
+			size: 5600 * format.MebiByte,
 		},
 		{
-			name: "orca-mini:7b",
-			size: 5118 * format.MebiByte,
+			name: "mistral",
+			size: 4620 * format.MebiByte,
 		},
 		{
 			name: "dolphin-mistral",
@@ -254,7 +260,7 @@ func TestMultiModelStress(t *testing.T) {
 	}
 	go func() {
 		for {
-			time.Sleep(2 * time.Second)
+			time.Sleep(10 * time.Second)
 			select {
 			case <-ctx.Done():
 				return
@@ -265,7 +271,21 @@ func TestMultiModelStress(t *testing.T) {
 					continue
 				}
 				for _, m := range models.Models {
-					slog.Info("loaded model snapshot", "model", m)
+					var procStr string
+					switch {
+					case m.SizeVRAM == 0:
+						procStr = "100% CPU"
+					case m.SizeVRAM == m.Size:
+						procStr = "100% GPU"
+					case m.SizeVRAM > m.Size || m.Size == 0:
+						procStr = "Unknown"
+					default:
+						sizeCPU := m.Size - m.SizeVRAM
+						cpuPercent := math.Round(float64(sizeCPU) / float64(m.Size) * 100)
+						procStr = fmt.Sprintf("%d%%/%d%%", int(cpuPercent), int(100-cpuPercent))
+					}
+
+					slog.Info("loaded model snapshot", "model", m.Name, "CPU/GPU", procStr, "expires", format.HumanTime(m.ExpiresAt, "Never"))
 				}
 			}
 		}
Repository: nodejs/node
Pull request: doc: update Juan's security steward info


Changed files:
filename: README.md
patch: @@ -889,11 +889,11 @@ releases on a rotation basis as outlined in the
   * [bengl](https://github.com/bengl) -
     **Bryan English** <<bryan@bryanenglish.com>> (he/him)
 * [HeroDevs](https://www.herodevs.com/)
+  * [juanarbol](https://github.com/juanarbol) - OpenJSF handle: `juanarbol`
+    **Juan José Arboleda** <<soyjuanarbol@gmail.com>> (he/him)
   * [marco-ippolito](https://github.com/marco-ippolito) - OpenJSF handle: `Marco Ippolito`
     **Marco Ippolito** <<marcoippolito54@gmail.com>> (he/him)
 * [NodeSource](https://nodesource.com/)
-  * [juanarbol](https://github.com/juanarbol) -
-    **Juan José Arboleda** <<soyjuanarbol@gmail.com>> (he/him)
   * [RafaelGSS](https://github.com/RafaelGSS) - OpenJSF handle: `RafaelGSS`
     **Rafael Gonzaga** <<rafael.nunu@hotmail.com>> (he/him)
 * [Platformatic](https://platformatic.dev/)
Repository: vuejs/vue
Pull request: fix(sfc): check template `ref` usage, fix #12984

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

Fixes #12984 

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `main` branch for v2.x (or to a previous version branch)
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: packages/compiler-sfc/src/compileScript.ts
patch: @@ -1818,6 +1818,8 @@ function resolveTemplateUsageCheckString(sfc: SFCDescriptor, isTS: boolean) {
           if (value) {
             code += `,${processExp(value, isTS, baseName)}`
           }
+        } else if (name === 'ref') {
+          code += `,${value}`
         }
       }
     },

filename: packages/compiler-sfc/test/__snapshots__/compileScript.spec.ts.snap
patch: @@ -364,6 +364,20 @@ return { vMyDir }
 })"
 `;
 
+exports[`SFC compile <script setup> > dev mode import usage check > imported ref as template ref 1`] = `
+"import { defineComponent as _defineComponent } from 'vue'
+import { aref } from './x'
+        
+export default /*#__PURE__*/_defineComponent({
+  setup(__props) {
+
+        
+return { aref }
+}
+
+})"
+`;
+
 exports[`SFC compile <script setup> > dev mode import usage check > js template string interpolations 1`] = `
 "import { defineComponent as _defineComponent } from 'vue'
 import { VAR, VAR2, VAR3 } from './x'

filename: packages/compiler-sfc/test/compileScript.spec.ts
patch: @@ -398,6 +398,19 @@ defineExpose({ foo: 123 })
       assertCode(content)
     })
 
+    test('imported ref as template ref', () => {
+      const { content } = compile(`
+        <script setup lang="ts">
+        import { aref } from './x'
+        </script>
+        <template>
+          <div ref="aref"></div>
+        </template>
+        `)
+      expect(content).toMatch(`return { aref }`)
+      assertCode(content)
+    })
+
     test('vue interpolations', () => {
       const { content } = compile(`
       <script setup lang="ts">
Repository: ollama/ollama
Pull request: cuda: leverage JIT for smaller footprint

Prior to this change our official binaries contained both JIT PTX code and the cubin binary code for our chosen compute capabilities. This change switches to only compile the PTX code and rely on JIT at runtime for generating the cubin specific to the users GPU.  The cubins are cached on the users system, so they should only see a small lag on the very first model load for a given Ollama release.  This also adds the first generation of Blackwell GPUs so they aren't reliant on the Hopper PTX.

This change reduces the ggml-cuda.dll from 1.2G to 460M

I also removed CC 8.7 as that appears to be only a Jetson CC and unused on x86.

Testing on a dual 4060 Windows system, loading gpt-oss:20b takes 6.01s before this change.  With this change, on the very first load, it takes 6.26s, then all subsequent loads take ~6.0s.  Token rate is unaffected.


Changed files:
filename: CMakePresets.json
patch: @@ -22,22 +22,22 @@
       "name": "CUDA 12",
       "inherits": [ "CUDA" ],
       "cacheVariables": {
-        "CMAKE_CUDA_ARCHITECTURES": "50;60;61;70;75;80;86;87;89;90;90a;120",
+        "CMAKE_CUDA_ARCHITECTURES": "50-virtual;60-virtual;61-virtual;70-virtual;75-virtual;80-virtual;86-virtual;89-virtual;90-virtual;90a-virtual;100-virtual;120-virtual",
         "CMAKE_CUDA_FLAGS": "-Wno-deprecated-gpu-targets -t 2"
       }
     },
     {
       "name": "JetPack 5",
       "inherits": [ "CUDA" ],
       "cacheVariables": {
-        "CMAKE_CUDA_ARCHITECTURES": "72;87"
+        "CMAKE_CUDA_ARCHITECTURES": "72-virtual;87-virtual"
       }
     },
     {
       "name": "JetPack 6",
       "inherits": [ "CUDA" ],
       "cacheVariables": {
-        "CMAKE_CUDA_ARCHITECTURES": "87"
+        "CMAKE_CUDA_ARCHITECTURES": "87-virtual"
       }
     },
     {
Repository: facebook/react
Pull request: [compiler]: add `@tanstack/react-virtual` to known incompatible libraries

Replaces #31820. #34027 added a check for `@tanstack/react-table`, but not `@tanstack/react-virtual`.
In our testing `@tanstack/react-virtual`'s `useVirtualizer` returns functions that cannot be memoized, [this is also documented in the community](https://github.com/TanStack/virtual/issues/736#issuecomment-3065658277).
 

Changed files:
filename: compiler/packages/babel-plugin-react-compiler/src/HIR/DefaultModuleTypeProvider.ts
patch: @@ -86,6 +86,24 @@ export function defaultModuleTypeProvider(
         },
       };
     }
+    case '@tanstack/react-virtual': {
+      return {
+        kind: 'object',
+        properties: {
+          /*
+           * Many of the properties of `useVirtualizer()`'s return value are incompatible, so we mark the entire hook
+           * as incompatible
+           */
+          useVirtualizer: {
+            kind: 'hook',
+            positionalParams: [],
+            restParam: Effect.Read,
+            returnType: {kind: 'type', name: 'Any'},
+            knownIncompatible: `TanStack Virtual's \`useVirtualizer()\` API returns functions that cannot be memoized safely`,
+          },
+        },
+      };
+    }
   }
   return null;
 }
Repository: vercel/next.js
Pull request: [fragment-scroll] Cleanup scroll and focus restoration in layout router

Just removing some unnecessary runtime checks and typecasts to make future diffs smaller.

Changed files:
filename: packages/next/src/client/components/layout-router.tsx
patch: @@ -127,7 +127,7 @@ interface ScrollAndFocusHandlerProps {
 }
 class InnerScrollAndFocusHandler extends React.Component<ScrollAndFocusHandlerProps> {
   handlePotentialScroll = () => {
-    // Handle scroll and focus, it's only applied once in the first useEffect that triggers that changed.
+    // Handle scroll and focus, it's only applied once.
     const { focusAndScrollRef, segmentPath } = this.props
 
     if (focusAndScrollRef.apply) {
@@ -192,7 +192,7 @@ class InnerScrollAndFocusHandler extends React.Component<ScrollAndFocusHandlerPr
         () => {
           // In case of hash scroll, we only need to scroll the element into view
           if (hashFragment) {
-            ;(domNode as HTMLElement).scrollIntoView()
+            domNode.scrollIntoView()
 
             return
           }
@@ -202,7 +202,7 @@ class InnerScrollAndFocusHandler extends React.Component<ScrollAndFocusHandlerPr
           const viewportHeight = htmlElement.clientHeight
 
           // If the element's top edge is already in the viewport, exit early.
-          if (topOfElementInViewport(domNode as HTMLElement, viewportHeight)) {
+          if (topOfElementInViewport(domNode, viewportHeight)) {
             return
           }
 
@@ -213,9 +213,9 @@ class InnerScrollAndFocusHandler extends React.Component<ScrollAndFocusHandlerPr
           htmlElement.scrollTop = 0
 
           // Scroll to domNode if domNode is not in viewport when scrolled to top of document
-          if (!topOfElementInViewport(domNode as HTMLElement, viewportHeight)) {
+          if (!topOfElementInViewport(domNode, viewportHeight)) {
             // Scroll into view doesn't scroll horizontally by default when not needed
-            ;(domNode as HTMLElement).scrollIntoView()
+            domNode.scrollIntoView()
           }
         },
         {
@@ -238,10 +238,7 @@ class InnerScrollAndFocusHandler extends React.Component<ScrollAndFocusHandlerPr
   }
 
   componentDidUpdate() {
-    // Because this property is overwritten in handlePotentialScroll it's fine to always run it when true as it'll be set to false for subsequent renders.
-    if (this.props.focusAndScrollRef.apply) {
-      this.handlePotentialScroll()
-    }
+    this.handlePotentialScroll()
   }
 
   render() {
Repository: huggingface/transformers
Pull request: update somes audio models


Changed files:
filename: README.md
patch: @@ -265,12 +265,12 @@ Expand each modality below to see a few example models for various use cases.
 <details>
 <summary>Audio</summary>
 
-- Audio classification with [Whisper](https://huggingface.co/openai/whisper-large-v3-turbo)
-- Automatic speech recognition with [Moonshine](https://huggingface.co/UsefulSensors/moonshine)
+- Audio classification with [CLAP](https://huggingface.co/laion/clap-htsat-fused)
+- Automatic speech recognition with [Parakeet](https://huggingface.co/nvidia/parakeet-ctc-1.1b#transcribing-using-transformers-%F0%9F%A4%97), [Whisper](https://huggingface.co/openai/whisper-large-v3-turbo), [GLM-ASR](https://huggingface.co/zai-org/GLM-ASR-Nano-2512) and [Moonshine-Streaming](https://huggingface.co/UsefulSensors/moonshine-streaming-medium)
 - Keyword spotting with [Wav2Vec2](https://huggingface.co/superb/wav2vec2-base-superb-ks)
 - Speech to speech generation with [Moshi](https://huggingface.co/kyutai/moshiko-pytorch-bf16)
 - Text to audio with [MusicGen](https://huggingface.co/facebook/musicgen-large)
-- Text to speech with [Bark](https://huggingface.co/suno/bark)
+- Text to speech with [CSM](https://huggingface.co/sesame/csm-1b)
 
 </details>
 
@@ -292,7 +292,7 @@ Expand each modality below to see a few example models for various use cases.
 <details>
 <summary>Multimodal</summary>
 
-- Audio or text to text with [Qwen2-Audio](https://huggingface.co/Qwen/Qwen2-Audio-7B)
+- Audio or text to text with [Voxtral](https://huggingface.co/mistralai/Voxtral-Mini-3B-2507), [Audio Flamingo](https://huggingface.co/nvidia/audio-flamingo-3-hf)
 - Document question answering with [LayoutLMv3](https://huggingface.co/microsoft/layoutlmv3-base)
 - Image or text to text with [Qwen-VL](https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct)
 - Image captioning [BLIP-2](https://huggingface.co/Salesforce/blip2-opt-2.7b)
Repository: huggingface/transformers
Pull request: [Doc tests] Fix bug

# What does this PR do?

This PR fixes a bug regarding the doc tests. It also enables the doc tests for Eomt-DINOv3.

## Summary

The `SKIP_CUDA_DOCTEST` environment variable check in `src/transformers/testing_utils.py` has a bug that causes it to always evaluate to `True` by default, unintentionally skipping all doctests that contain CUDA-related code.

Changed files:
filename: docs/source/en/model_doc/eomt_dinov3.md
patch: @@ -52,30 +52,26 @@ Below is a minimal example showing how to run panoptic segmentation with a DINOv
 image processor can be reused for semantic or instance segmentation simply by swapping the checkpoint.
 
 ```python
-import matplotlib.pyplot as plt
-import requests
-import torch
-from PIL import Image
+>>> import requests
+>>> import torch
+>>> from PIL import Image
 
-from transformers import AutoImageProcessor, AutoModelForUniversalSegmentation
+>>> from transformers import AutoImageProcessor, AutoModelForUniversalSegmentation
 
+>>> model_id = "tue-mps/eomt-dinov3-coco-panoptic-base-640"
+>>> processor = AutoImageProcessor.from_pretrained(model_id)
+>>> model = AutoModelForUniversalSegmentation.from_pretrained(model_id).to("cuda" if torch.cuda.is_available() else "cpu")
 
-model_id = "tue-mps/eomt-dinov3-coco-panoptic-base-640"
-processor = AutoImageProcessor.from_pretrained(model_id)
-model = AutoModelForUniversalSegmentation.from_pretrained(model_id).to("cuda" if torch.cuda.is_available() else "cpu")
+>>> image = Image.open(requests.get("http://images.cocodataset.org/val2017/000000039769.jpg", stream=True).raw)
 
-image = Image.open(requests.get("http://images.cocodataset.org/val2017/000000039769.jpg", stream=True).raw)
+>>> inputs = processor(images=image, return_tensors="pt").to(model.device)
 
-inputs = processor(images=image, return_tensors="pt").to(model.device)
+>>> with torch.inference_mode():
+...     outputs = model(**inputs)
 
-with torch.inference_mode():
-    outputs = model(**inputs)
-
-segmentation = processor.post_process_panoptic_segmentation(outputs, target_sizes=[image.size[::-1]])[0]
-
-plt.imshow(segmentation["segmentation"])
-plt.axis("off")
-plt.show()
+>>> segmentation = processor.post_process_panoptic_segmentation(outputs, target_sizes=[image.size[::-1]])[0]
+>>> list(segmentation.keys())
+['segmentation', 'segments_info']
 ```
 
 ## EomtDinov3Config

filename: src/transformers/testing_utils.py
patch: @@ -2795,7 +2795,7 @@ class HfDocTestParser(doctest.DocTestParser):
     # fmt: on
 
     # !!!!!!!!!!! HF Specific !!!!!!!!!!!
-    skip_cuda_tests: bool = bool(os.environ.get("SKIP_CUDA_DOCTEST", "0"))
+    skip_cuda_tests: bool = os.environ.get("SKIP_CUDA_DOCTEST", "0") == "1"
     # !!!!!!!!!!! HF Specific !!!!!!!!!!!
 
     def parse(self, string, name="<string>"):