feat: Support for new AI capabilities
Adds support for the new AI capabilities in Chrome. This change includes updated logic for checking availability and creating text sessions.
This commit is contained in:
parent
977723f71f
commit
88d0cb68ae
@ -3,13 +3,19 @@ export const checkChromeAIAvailability = async (): Promise<"readily" | "no" | "a
|
|||||||
try {
|
try {
|
||||||
const ai = (window as any).ai;
|
const ai = (window as any).ai;
|
||||||
|
|
||||||
// upcoming version change
|
// latest i guess
|
||||||
|
if (ai?.languageModel?.capabilities) {
|
||||||
|
const capabilities = await ai.languageModel.capabilities();
|
||||||
|
return capabilities?.available ?? "no";
|
||||||
|
}
|
||||||
|
|
||||||
|
// old version change
|
||||||
if (ai?.assistant?.capabilities) {
|
if (ai?.assistant?.capabilities) {
|
||||||
const capabilities = await ai.assistant.capabilities();
|
const capabilities = await ai.assistant.capabilities();
|
||||||
return capabilities?.available ?? "no";
|
return capabilities?.available ?? "no";
|
||||||
}
|
}
|
||||||
|
|
||||||
// old version
|
// too old version
|
||||||
if (ai?.canCreateTextSession) {
|
if (ai?.canCreateTextSession) {
|
||||||
const available = await ai.canCreateTextSession();
|
const available = await ai.canCreateTextSession();
|
||||||
return available ?? "no";
|
return available ?? "no";
|
||||||
@ -33,7 +39,15 @@ export interface AITextSession {
|
|||||||
export const createAITextSession = async (data: any): Promise<AITextSession> => {
|
export const createAITextSession = async (data: any): Promise<AITextSession> => {
|
||||||
const ai = (window as any).ai;
|
const ai = (window as any).ai;
|
||||||
|
|
||||||
// upcoming version change
|
// new version i guess
|
||||||
|
if (ai?.languageModel?.create) {
|
||||||
|
const session = await ai.languageModel.create({
|
||||||
|
...data
|
||||||
|
})
|
||||||
|
return session
|
||||||
|
}
|
||||||
|
|
||||||
|
// old version change
|
||||||
if (ai?.assistant?.create) {
|
if (ai?.assistant?.create) {
|
||||||
const session = await ai.assistant.create({
|
const session = await ai.assistant.create({
|
||||||
...data
|
...data
|
||||||
@ -41,7 +55,7 @@ export const createAITextSession = async (data: any): Promise<AITextSession> =>
|
|||||||
return session
|
return session
|
||||||
}
|
}
|
||||||
|
|
||||||
// old version
|
// too old version
|
||||||
if (ai.createTextSession) {
|
if (ai.createTextSession) {
|
||||||
const session = await ai.createTextSession({
|
const session = await ai.createTextSession({
|
||||||
...data
|
...data
|
||||||
|
Loading…
x
Reference in New Issue
Block a user