@@ -32,8 +32,6 @@ import { AIError } from './errors';
3232import { AIModel , GenerativeModel , ImagenModel } from './models' ;
3333import { encodeInstanceIdentifier } from './helpers' ;
3434import { GoogleAIBackend } from './backend' ;
35- import { ChromeAdapterImpl } from './methods/chrome-adapter' ;
36- import { LanguageModel } from './types/language-model' ;
3735
3836export { ChatSession } from './methods/chat-session' ;
3937export * from './requests/schema-builder' ;
@@ -124,15 +122,17 @@ export function getGenerativeModel(
124122 `Must provide a model name. Example: getGenerativeModel({ model: 'my-model-name' })`
125123 ) ;
126124 }
127- let chromeAdapter : ChromeAdapterImpl | undefined ;
128- // Do not initialize a ChromeAdapter if we are not in hybrid mode.
129- if ( typeof window !== 'undefined' && hybridParams . mode ) {
130- chromeAdapter = new ChromeAdapterImpl (
131- window . LanguageModel as LanguageModel ,
132- hybridParams . mode ,
133- hybridParams . onDeviceParams
134- ) ;
135- }
125+
126+ /**
127+ * An AIService registered by index.node.ts will not have a
128+ * chromeAdapterFactory() method.
129+ */
130+ const chromeAdapter = ( ai as AIService ) . chromeAdapterFactory ?.(
131+ hybridParams . mode ,
132+ typeof window === 'undefined' ? undefined : window ,
133+ hybridParams . onDeviceParams
134+ ) ;
135+
136136 return new GenerativeModel ( ai , inCloudParams , requestOptions , chromeAdapter ) ;
137137}
138138
0 commit comments