@@ -32,8 +32,6 @@ import { AIError } from './errors';
32
32
import { AIModel , GenerativeModel , ImagenModel } from './models' ;
33
33
import { encodeInstanceIdentifier } from './helpers' ;
34
34
import { GoogleAIBackend } from './backend' ;
35
- import { ChromeAdapterImpl } from './methods/chrome-adapter' ;
36
- import { LanguageModel } from './types/language-model' ;
37
35
38
36
export { ChatSession } from './methods/chat-session' ;
39
37
export * from './requests/schema-builder' ;
@@ -124,15 +122,17 @@ export function getGenerativeModel(
124
122
`Must provide a model name. Example: getGenerativeModel({ model: 'my-model-name' })`
125
123
) ;
126
124
}
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
+
136
136
return new GenerativeModel ( ai , inCloudParams , requestOptions , chromeAdapter ) ;
137
137
}
138
138
0 commit comments