helloadhavan/github_issues huggingface dataset:
Repository: facebook/react
Pull request: [Fizz] Restore `useMemoCache` in renderers with support for Client APIs

e.g. in `react-dom/server`: https://codesandbox.io/p/sandbox/usememocache-react-dom-server-nkz4zc?file=%2Fsrc%2Findex.js%3A9%2C1

Broke only recently in https://github.com/facebook/react/pull/31767. No stable release is affected

## Summary

Mainly an oversight since we don't have types based off of feature flags. Now that `enableUseMemoCache` is shipped, `useMemoCache` can be non-nullable.

Discovered during integration testing with Next.js where SSR threw with `TypeError: dispatcher.useMemoCache is not a function` but ultimately recovered due to client-side rendering.

## How did you test this change?

Hardened types.



Changed files:
filename: packages/react-reconciler/src/ReactInternalTypes.js
patch: @@ -430,7 +430,7 @@ export type Dispatcher = {
   ): T,
   useId(): string,
   useCacheRefresh?: () => <T>(?() => T, ?T) => void,
-  useMemoCache?: (size: number) => Array<any>,
+  useMemoCache: (size: number) => Array<any>,
   useHostTransitionStatus: () => TransitionStatus,
   useOptimistic: <S, A>(
     passthrough: S,

filename: packages/react-server/src/ReactFizzHooks.js
patch: @@ -834,6 +834,7 @@ export const HooksDispatcher: Dispatcher = supportsClientAPIs
       useActionState,
       useFormState: useActionState,
       useHostTransitionStatus,
+      useMemoCache,
     }
   : {
       readContext,
Repository: ollama/ollama
Pull request: Update README.md

Added NOMYO Router - a transparent Ollama proxy with model aware routing

Changed files:
filename: README.md
patch: @@ -602,6 +602,7 @@ See the [API documentation](./docs/api.md) for all endpoints.
 - [UnityCodeLama](https://github.com/HardCodeDev777/UnityCodeLama) (Unity Edtior tool to analyze scripts via Ollama)
 - [NativeMind](https://github.com/NativeMindBrowser/NativeMindExtension) (Private, on-device AI Assistant, no cloud dependencies)
 - [GMAI - Gradle Managed AI](https://gmai.premex.se/) (Gradle plugin for automated Ollama lifecycle management during build phases)
+- [NOMYO Router](https://github.com/nomyo-ai/nomyo-router) (A transparent Ollama proxy with model deployment aware routing which auto-manages multiple Ollama instances in a given network)
 
 ### Supported backends
Repository: facebook/react
Pull request: Turn off `enableYieldingBeforePassive`

The flag causes passive effects to not fire if they were part of a suspensey commit. Potential forward-fix in https://github.com/facebook/react/pull/31858

## test plan

- failing unit test
- repro works with a build from this branch: https://codesandbox.io/p/sandbox/suspensey-css-and-passive-effects-forked-jvjyfn?workspaceId=ws_NXrhLjqHgWvFjhiKcfVFu6



Changed files:
filename: packages/react-reconciler/src/__tests__/ReactSuspenseyCommitPhase-test.js
patch: @@ -491,4 +491,46 @@ describe('ReactSuspenseyCommitPhase', () => {
       </>,
     );
   });
+
+  // FIXME: Should pass with `enableYieldingBeforePassive`
+  // @gate !enableYieldingBeforePassive
+  it('runs passive effects after suspended commit resolves', async () => {
+    function Effect() {
+      React.useEffect(() => {
+        Scheduler.log('flush effect');
+      });
+      return <Text text="render effect" />;
+    }
+
+    const root = ReactNoop.createRoot();
+
+    await act(() => {
+      root.render(
+        <Suspense fallback={<Text text="Loading..." />}>
+          <Effect />
+          <SuspenseyImage src="A" />
+        </Suspense>,
+      );
+    });
+
+    assertLog([
+      'render effect',
+      'Image requested [A]',
+      'Loading...',
+      'render effect',
+    ]);
+    expect(root).toMatchRenderedOutput('Loading...');
+
+    await act(() => {
+      resolveSuspenseyThing('A');
+    });
+
+    assertLog(['flush effect']);
+    expect(root).toMatchRenderedOutput(
+      <>
+        {'render effect'}
+        <suspensey-thing src="A" />
+      </>,
+    );
+  });
 });

filename: packages/shared/ReactFeatureFlags.js
patch: @@ -78,7 +78,8 @@ export const enableLegacyFBSupport = false;
 // -----------------------------------------------------------------------------
 
 // Yield to the browser event loop and not just the scheduler event loop before passive effects.
-export const enableYieldingBeforePassive = __EXPERIMENTAL__;
+// Fix gated tests that fail with this flag enabled before turning it back on.
+export const enableYieldingBeforePassive = false;
 
 export const enableLegacyCache = __EXPERIMENTAL__;
Repository: nodejs/node
Pull request: doc: simplify addAbortListener example

The example was written before v8 supported the using keyword and hence explicitly called `Symbol.dispose`.

Since now the keyword is supported, the example can be simplified.

Changed files:
filename: doc/api/events.md
patch: @@ -1908,31 +1908,25 @@ Returns a disposable so that it may be unsubscribed from more easily.
 const { addAbortListener } = require('node:events');
 
 function example(signal) {
-  let disposable;
-  try {
-    signal.addEventListener('abort', (e) => e.stopImmediatePropagation());
-    disposable = addAbortListener(signal, (e) => {
-      // Do something when signal is aborted.
-    });
-  } finally {
-    disposable?.[Symbol.dispose]();
-  }
+  signal.addEventListener('abort', (e) => e.stopImmediatePropagation());
+  // addAbortListener() returns a disposable, so the `using` keyword ensures
+  // the abort listener is automatically removed when this scope exits.
+  using _ = addAbortListener(signal, (e) => {
+    // Do something when signal is aborted.
+  });
 }
 ```
 
 ```mjs
 import { addAbortListener } from 'node:events';
 
 function example(signal) {
-  let disposable;
-  try {
-    signal.addEventListener('abort', (e) => e.stopImmediatePropagation());
-    disposable = addAbortListener(signal, (e) => {
-      // Do something when signal is aborted.
-    });
-  } finally {
-    disposable?.[Symbol.dispose]();
-  }
+  signal.addEventListener('abort', (e) => e.stopImmediatePropagation());
+  // addAbortListener() returns a disposable, so the `using` keyword ensures
+  // the abort listener is automatically removed when this scope exits.
+  using _ = addAbortListener(signal, (e) => {
+    // Do something when signal is aborted.
+  });
 }
 ```
Repository: electron/electron
Pull request: fix: use setter's creation context when proxying setter in OverrideGlobalPropertyFromIsolatedWorld

Copy-paste typo — the setter branch was deriving `source_context` from `getter->GetCreationContextChecked(isolate)` instead of `setter->`.

Currently latent since the only call site (`lib/renderer/api/context-bridge.ts`) always passes both getter and setter from the same preload context, so they resolve to the same creation context. If a future call site ever passed a setter without a getter (or from a different context), this would crash on `GetCreationContextChecked` or use the wrong source context.

Notes: no-notes

Changed files:
filename: shell/renderer/api/electron_api_context_bridge.cc
patch: @@ -905,7 +905,7 @@ bool OverrideGlobalPropertyFromIsolatedWorld(
     }
     if (!setter->IsNullOrUndefined() && setter->IsObject()) {
       v8::Local<v8::Context> source_context =
-          getter->GetCreationContextChecked(isolate);
+          setter.As<v8::Object>()->GetCreationContextChecked(isolate);
       v8::MaybeLocal<v8::Value> maybe_setter_proxy = PassValueToOtherContext(
           isolate, source_context, isolate, main_context, setter,
           source_context->Global(), false, BridgeErrorTarget::kSource);
Repository: ollama/ollama
Pull request: Add Neuro SAN to README.md's community integrations

Added [Neuro SAN](https://github.com/cognizant-ai-lab/neuro-san-studio) to the libraries that support Ollama in the README.md's community integrations section, and provided a link to the documentation and examples.

Changed files:
filename: README.md
patch: @@ -541,6 +541,7 @@ See the [API documentation](./docs/api.md) for all endpoints.
 - [OllamaPlusPlus](https://github.com/HardCodeDev777/OllamaPlusPlus) (Very simple C++ library for Ollama)
 - [any-llm](https://github.com/mozilla-ai/any-llm) (A single interface to use different llm providers by [mozilla.ai](https://www.mozilla.ai/))
 - [any-agent](https://github.com/mozilla-ai/any-agent) (A single interface to use and evaluate different agent frameworks by [mozilla.ai](https://www.mozilla.ai/))
+- [Neuro SAN](https://github.com/cognizant-ai-lab/neuro-san-studio) (Data-driven multi-agent orchestration framework) with [example](https://github.com/cognizant-ai-lab/neuro-san-studio/blob/main/docs/user_guide.md#ollama)
 
 ### Mobile
Repository: facebook/react
Pull request: Devtools: Streamline getting extension from branch

Stack:
1. https://github.com/facebook/react/pull/28975 <--- You're here
1. https://github.com/facebook/react/pull/28976
1. https://github.com/facebook/react/pull/28974

## Summary

For manual e2e testing, I oftentimes just need the extension for the browser I'm using. So I'm adding separate artifacts just for Chrome and Firefox extension instead of a single tarball with both. Avoids one unpack step and is also easier for external people to grab a nightly build of the extension.

## How did you test this change?

- [x] Download `react-devtools-chrome-extension.zip` from [`build_devtools_and_process_artifacts ` artifacts](https://app.circleci.com/pipelines/github/facebook/react/52772/workflows/c57fae57-bee3-4b8d-8f2a-fe31464f8922/jobs/850793/artifacts): 


Changed files:
filename: .circleci/config.yml
patch: @@ -228,6 +228,13 @@ jobs:
           command: ./scripts/circleci/pack_and_store_devtools_artifacts.sh
       - store_artifacts:
           path: ./build/devtools.tgz
+      # Simplifies getting the extension for local testing
+      - store_artifacts:
+          path: ./build/devtools/chrome-extension.zip
+          destination: react-devtools-chrome-extension.zip
+      - store_artifacts:
+          path: ./build/devtools/firefox-extension.zip
+          destination: react-devtools-firefox-extension.zip
 
   run_devtools_e2e_tests:
     docker: *docker
Repository: electron/electron
Pull request: fix: use setter's creation context when proxying setter in OverrideGlobalPropertyFromIsolatedWorld

Backport of #49990

See that PR for details.


Notes: no-notes

Changed files:
filename: shell/renderer/api/electron_api_context_bridge.cc
patch: @@ -906,7 +906,7 @@ bool OverrideGlobalPropertyFromIsolatedWorld(
     }
     if (!setter->IsNullOrUndefined() && setter->IsObject()) {
       v8::Local<v8::Context> source_context =
-          getter->GetCreationContextChecked(isolate);
+          setter.As<v8::Object>()->GetCreationContextChecked(isolate);
       v8::MaybeLocal<v8::Value> maybe_setter_proxy = PassValueToOtherContext(
           isolate, source_context, isolate, main_context, setter,
           source_context->Global(), false, BridgeErrorTarget::kSource);
Repository: ollama/ollama
Pull request: fix keep alive

this change allows subsecond keep alives

Changed files:
filename: api/types.go
patch: @@ -888,7 +888,7 @@ func (d *Duration) UnmarshalJSON(b []byte) (err error) {
 		if t < 0 {
 			d.Duration = time.Duration(math.MaxInt64)
 		} else {
-			d.Duration = time.Duration(int(t) * int(time.Second))
+			d.Duration = time.Duration(t * float64(time.Second))
 		}
 	case string:
 		d.Duration, err = time.ParseDuration(t)

filename: api/types_test.go
patch: @@ -17,6 +17,11 @@ func TestKeepAliveParsingFromJSON(t *testing.T) {
 		req  string
 		exp  *Duration
 	}{
+		{
+			name: "Unset",
+			req:  `{ }`,
+			exp:  nil,
+		},
 		{
 			name: "Positive Integer",
 			req:  `{ "keep_alive": 42 }`,
@@ -25,7 +30,7 @@ func TestKeepAliveParsingFromJSON(t *testing.T) {
 		{
 			name: "Positive Float",
 			req:  `{ "keep_alive": 42.5 }`,
-			exp:  &Duration{42 * time.Second},
+			exp:  &Duration{42500 * time.Millisecond},
 		},
 		{
 			name: "Positive Integer String",

filename: server/routes.go
patch: @@ -189,7 +189,7 @@ func (s *Server) GenerateHandler(c *gin.Context) {
 	}
 
 	// expire the runner
-	if req.Prompt == "" && req.KeepAlive != nil && int(req.KeepAlive.Seconds()) == 0 {
+	if req.Prompt == "" && req.KeepAlive != nil && req.KeepAlive.Duration == 0 {
 		s.sched.expireRunner(m)
 
 		c.JSON(http.StatusOK, api.GenerateResponse{
@@ -1544,7 +1544,7 @@ func (s *Server) ChatHandler(c *gin.Context) {
 	}
 
 	// expire the runner
-	if len(req.Messages) == 0 && req.KeepAlive != nil && int(req.KeepAlive.Seconds()) == 0 {
+	if len(req.Messages) == 0 && req.KeepAlive != nil && req.KeepAlive.Duration == 0 {
 		model, err := GetModel(req.Model)
 		if err != nil {
 			switch {
Repository: electron/electron
Pull request: fix: bind offscreen paint callback to child `WebContents`

Backport of #49998

See that PR for details.


Notes: none

Changed files:
filename: shell/browser/api/electron_api_web_contents.cc
patch: @@ -1251,11 +1251,12 @@ void WebContents::MaybeOverrideCreateParamsForNewWindow(
          dict.Get(options::kOffscreen, &is_offscreen) && is_offscreen);
 
     if (is_offscreen) {
+      // Use a no-op callback here. The real OnPaint callback will be bound
+      // to the child WebContents in AddNewContents via SetCallback().
       auto* view = new OffScreenWebContentsView(
           false, offscreen_use_shared_texture_,
           offscreen_shared_texture_pixel_format_,
-          offscreen_device_scale_factor_,
-          base::BindRepeating(&WebContents::OnPaint, base::Unretained(this)));
+          offscreen_device_scale_factor_, base::DoNothing());
       create_params->view = view;
       create_params->delegate_view = view;
     }
@@ -1283,6 +1284,15 @@ content::WebContents* WebContents::AddNewContents(
   v8::HandleScope handle_scope(isolate);
   auto api_web_contents = CreateAndTake(isolate, std::move(new_contents), type);
 
+  // Rebind the paint callback to the child WebContents. The
+  // OffScreenWebContentsView was initially created with the parent's OnPaint
+  // in MaybeOverrideCreateParamsForNewWindow, but the paint data
+  // belongs to the child.
+  if (auto* osr_view = api_web_contents->GetOffScreenWebContentsView()) {
+    osr_view->SetCallback(base::BindRepeating(&WebContents::OnPaint,
+                                              api_web_contents->GetWeakPtr()));
+  }
+
   // We call RenderFrameCreated here as at this point the empty "about:blank"
   // render frame has already been created.  If the window never navigates again
   // RenderFrameCreated won't be called and certain prefs like

filename: shell/browser/osr/osr_web_contents_view.cc
patch: @@ -47,6 +47,10 @@ void OffScreenWebContentsView::SetWebContents(
     view->InstallTransparency();
 }
 
+void OffScreenWebContentsView::SetCallback(const OnPaintCallback& callback) {
+  callback_ = callback;
+}
+
 void OffScreenWebContentsView::SetNativeWindow(NativeWindow* window) {
   if (native_window_)
     native_window_->RemoveObserver(this);

filename: shell/browser/osr/osr_web_contents_view.h
patch: @@ -44,6 +44,7 @@ class OffScreenWebContentsView : public content::WebContentsView,
 
   void SetWebContents(content::WebContents*);
   void SetNativeWindow(NativeWindow* window);
+  void SetCallback(const OnPaintCallback& callback);
 
   // NativeWindowObserver:
   void OnWindowResize() override;
Repository: nodejs/node
Pull request: doc: fix typo in --disable-wasm-trap-handler description

This PR fixes a typo in the `--disable-wasm-trap-handler` documentation.

Changes:
- `doc/api/cli.md`: `int the` -> `in the`, `may speedup` -> `may speed up`
- `doc/node.1`: applied the same fix to keep the man page in sync

This is a docs-only change and does not affect runtime behavior.

### Testing
No runtime tests were run (docs-only change).


Changed files:
filename: doc/api/cli.md
patch: @@ -758,7 +758,7 @@ added:
 
 By default, Node.js enables trap-handler-based WebAssembly bound
 checks. As a result, V8 does not need to insert inline bound checks
-int the code compiled from WebAssembly which may speedup WebAssembly
+in the code compiled from WebAssembly which may speed up WebAssembly
 execution significantly, but this optimization requires allocating
 a big virtual memory cage (currently 10GB). If the Node.js process
 does not have access to a large enough virtual memory address space

filename: doc/node.1
patch: @@ -460,7 +460,7 @@ vm.measureMemory();
 .It Fl -disable-wasm-trap-handler
 By default, Node.js enables trap-handler-based WebAssembly bound
 checks. As a result, V8 does not need to insert inline bound checks
-int the code compiled from WebAssembly which may speedup WebAssembly
+in the code compiled from WebAssembly which may speed up WebAssembly
 execution significantly, but this optimization requires allocating
 a big virtual memory cage (currently 10GB). If the Node.js process
 does not have access to a large enough virtual memory address space
Repository: huggingface/transformers
Pull request: Fix peft conversion typo

# What does this PR do?



Changed files:
filename: src/transformers/integrations/peft.py
patch: @@ -261,7 +261,7 @@ def _build_peft_weight_mapping(
                     source_patterns=new_source_patterns,
                     target_patterns=new_target_patterns,
                     distributed_operation=orig_conversion.distributed_operation,
-                    quantization_operation=orig_conversion.quantization_operations,
+                    quantization_operation=orig_conversion.quantization_operation,
                     operations=new_weight_conversions,
                 )
                 new_weight_conversions.append(new_conversion)
@@ -300,7 +300,7 @@ def _build_peft_weight_mapping(
                     source_patterns=new_source_patterns,
                     target_patterns=new_target_patterns,
                     distributed_operation=orig_conversion.distributed_operation,
-                    quantization_operation=orig_conversion.quantization_operations,
+                    quantization_operation=orig_conversion.quantization_operation,
                     operations=new_weight_conversions,
                 )
                 new_weight_conversions.append(new_conversion)
Repository: vercel/next.js
Pull request: segment cache: fix segment cache normalizer

This fixes an issue where deploying an app that explicitly named a catch-all segments as `[...segments]` or `[[...segments]]` would lead to repeated ISR cache misses on that route, even if it was generated at build time.

This is because the normalizer that is responsible for extracting the segment path wasn't escaping the `.segments` directory value, so the `.` was treated as a wildcard. That meant when the server attempted to look up the underlying segment data, it wouldn't find it and would have responded with a 204, which signals to the upstream CDN that it is not a cacheable response. 

Fixes #87090

Changed files:
filename: packages/next/src/server/normalizers/request/segment-prefix-rsc.test.ts
patch: @@ -9,4 +9,28 @@ describe('SegmentPrefixRSCPathnameNormalizer', () => {
       segmentPath: '/_tree',
     })
   })
+
+  it('should extract segment prefetch paths for catch-all params named segments', () => {
+    const normalizer = new SegmentPrefixRSCPathnameNormalizer()
+    const result = normalizer.extract(
+      '/catch/[...segments].segments/catch/$c$segments/__PAGE__.segment.rsc'
+    )
+
+    expect(result).toEqual({
+      originalPathname: '/catch/[...segments]',
+      segmentPath: '/catch/$c$segments/__PAGE__',
+    })
+  })
+
+  it('should still extract segment prefetch paths for other catch-all param names', () => {
+    const normalizer = new SegmentPrefixRSCPathnameNormalizer()
+    const result = normalizer.extract(
+      '/catch/[...foobar].segments/catch/$c$foobar/__PAGE__.segment.rsc'
+    )
+
+    expect(result).toEqual({
+      originalPathname: '/catch/[...foobar]',
+      segmentPath: '/catch/$c$foobar/__PAGE__',
+    })
+  })
 })

filename: packages/next/src/server/normalizers/request/segment-prefix-rsc.ts
patch: @@ -4,9 +4,10 @@ import {
   RSC_SEGMENT_SUFFIX,
   RSC_SEGMENTS_DIR_SUFFIX,
 } from '../../../lib/constants'
+import { escapeStringRegexp } from '../../../shared/lib/escape-regexp'
 
 const PATTERN = new RegExp(
-  `^(/.*)${RSC_SEGMENTS_DIR_SUFFIX}(/.*)${RSC_SEGMENT_SUFFIX}$`
+  `^(/.*)${escapeStringRegexp(RSC_SEGMENTS_DIR_SUFFIX)}(/.*)${escapeStringRegexp(RSC_SEGMENT_SUFFIX)}$`
 )
 
 export class SegmentPrefixRSCPathnameNormalizer implements PathnameNormalizer {
Repository: rust-lang/rust
Pull request: Moved tests/ui/issues/issue-23891.rs to tests/ui/macros/

<!-- homu-ignore:start -->
<!--
If this PR is related to an unstable feature or an otherwise tracked effort,
please link to the relevant tracking issue here. If you don't know of a related
tracking issue or there are none, feel free to ignore this.


This PR will get automatically assigned to a reviewer. In case you would like
a specific user to review your work, you can assign it to them by using

Part of the GSoC project to clean up tests/ui/issues/ by moving  tests to more appropriate subdirectories. Moved tests/ui/issues/issue-23891.rs to tests/ui/macros/macro-in-or-pattern.rs  This tests that a macro expanding to a pattern works correctly inside or-patterns in a match arm. The file has been renamed appropriately and its contents have been updated to contain a brief description of the test itself. 

    r? <reviewer name>
-->
<!-- homu-ignore:end -->


Changed files:
filename: tests/ui/macros/macro-in-or-pattern.rs
patch: @@ -1,3 +1,6 @@
+// Regression test for https://github.com/rust-lang/rust/issues/23891
+// Tests that a macro expanding to a pattern works correctly inside of or patterns
+
 //@ run-pass
 macro_rules! id {
     ($s: pat) => ($s);
Repository: ggml-org/llama.cpp
Pull request: sync : ggml


Changed files:
filename: scripts/sync-ggml.last
patch: @@ -1 +1 @@
-c044a8eeae2591faa0950c8b5e514cbc4bbfc4ca
+a04eea0761a85d18f3f504d6ab970c5c9dce705f
Repository: electron/electron
Pull request: fix: use setter's creation context when proxying setter in OverrideGlobalPropertyFromIsolatedWorld

Backport of #49990

See that PR for details.


Notes: no-notes

Changed files:
filename: shell/renderer/api/electron_api_context_bridge.cc
patch: @@ -905,7 +905,7 @@ bool OverrideGlobalPropertyFromIsolatedWorld(
     }
     if (!setter->IsNullOrUndefined() && setter->IsObject()) {
       v8::Local<v8::Context> source_context =
-          getter->GetCreationContextChecked(isolate);
+          setter.As<v8::Object>()->GetCreationContextChecked(isolate);
       v8::MaybeLocal<v8::Value> maybe_setter_proxy = PassValueToOtherContext(
           isolate, source_context, isolate, main_context, setter,
           source_context->Global(), false, BridgeErrorTarget::kSource);
Repository: ollama/ollama
Pull request: remove extra field attr

the original intent was to use `vision` as an alternate to the tensor name. since there's now `alt`, this is now meaningless. if it becomes necessary to add alternative names, it should use `alt`, e.g. `gguf:"v,alt:vision"`

Changed files:
filename: model/models/gemma3/model.go
patch: @@ -18,7 +18,7 @@ type Model struct {
 	model.Base
 	model.SentencePieceModel
 
-	*VisionModel `gguf:"v,vision"`
+	*VisionModel `gguf:"v"`
 	*TextModel
 
 	*MultiModalProjector `gguf:"mm"`

filename: model/models/llama4/model.go
patch: @@ -18,7 +18,7 @@ type Model struct {
 	model.BytePairEncoding
 	ImageProcessor
 
-	*VisionModel `gguf:"v,vision"`
+	*VisionModel `gguf:"v"`
 	*Projector   `gguf:"mm"`
 	*TextModel
 }

filename: model/models/mistral3/model.go
patch: @@ -18,7 +18,7 @@ type Model struct {
 	model.BytePairEncoding
 
 	*TextModel
-	*VisionModel         `gguf:"v,vision"`
+	*VisionModel         `gguf:"v"`
 	*MultiModalProjector `gguf:"mm"`
 
 	ImageProcessor

filename: model/models/mllama/model.go
patch: @@ -17,7 +17,7 @@ type Model struct {
 	model.Base
 	model.BytePairEncoding
 
-	*VisionModel `gguf:"v,vision"`
+	*VisionModel `gguf:"v"`
 	*TextModel
 
 	Projector *nn.Linear `gguf:"mm.0"`

filename: model/models/qwen25vl/model.go
patch: @@ -18,7 +18,7 @@ type Model struct {
 	model.BytePairEncoding
 
 	*TextModel
-	*VisionModel `gguf:"v,vision"`
+	*VisionModel `gguf:"v"`
 
 	ImageProcessor
 }