Code Velocity
Þróunartól

Bedrock AgentCore: Fella inn rauntíma gervigreindarvafrastýringu í React

·5 mín lestur·AWS·Upprunaleg heimild
Deila
Arkitektúrskema Amazon Bedrock AgentCore sem sýnir gagnastreymi til að fella inn rauntíma gervigreindarvafrastýringu í React forrit.
  • Ef þú notar AWS Bedrock fyrir gervigreindarlíkan þitt, settu upp AWS SDK fyrir JavaScript:
    npm install @aws-sdk/client-bedrock-runtime
    

Grunnkóðinn fyrir framkvæmd Live View er venjulega skipt: miðlarahlutakóði (fyrir fundastjórnun og rökfræði gervigreindarstýringar) keyrir í Node.js, og viðskiptavinahlutakóði (fyrir birtingu Live View) keyrir innan React forrits, oft bútaður saman með tólum eins og Vite.

Skref fyrir skref samþætting: Frá fundi til straums

Samþætting lifandi gervigreindarvafrastýringar með Amazon Bedrock AgentCore felur í sér skýrt, þriggja skrefa ferli, sem brúar rökfræði miðlarahlutans við React forritið þitt og öfluga eiginleika AWS skýsins.

1. Hefja vafrafund og búa til Live View vefslóðina

Fyrsta skrefið á sér stað á forritamiðlaranum þínum. Það er hér sem bakenda rökfræðin þín hefur vafrafund innan Amazon Bedrock AgentCore og aflar sér öruggt nauðsynlegrar vefslóðar til að streyma lifandi sýn.

Þú munt nota Browser flokkinn úr bedrock-agentcore SDK. Þessi flokkur sér um flókna ferlið við að búa til og stjórna einangruðum vafra umhverfum í skýinu. Lykilútgangurinn úr þessu skrefi er SigV4-forskrifað vefslóð, sem veitir öruggan, tímabundinn aðgang til að streyma lifandi myndstraumi vafrafundarins.

// Dæmi um kóða á miðlarahlið (Node.js)
import { Browser } from 'bedrock-agentcore';
import { AgentCoreClient } from '@aws-sdk/client-bedrock-agentcore';

// Frumstilla Bedrock AgentCore client (tryggja að AWS skilríki séu rétt stillt)
const agentCoreClient = new AgentCoreClient({ region: 'us-east-1' }); // Notaðu þitt æskilega svæði

async function startLiveSession() {
    // Búa til nýjan vafrafund
    const browser = new Browser(agentCoreClient);
    await browser.create();

    // Búa til Live View vefslóðina
    const liveViewUrl = await browser.getLiveViewURL();
    console.log('Live View URL:', liveViewUrl);

    // Geyma browser.sessionId til að tengja gervigreindarstýringuna þína síðar eða ljúka fundinum
    const sessionId = browser.sessionId;
    
    return { liveViewUrl, sessionId };
}

// Þessi `liveViewUrl` verður send til React viðskiptavinarins þíns.

Þessi vefslóð er síðan send til React framenda þinnar, sem mun nota hana til að koma á lifandi straumi.

2. Birta Live View í React forritinu þínu

Þegar React forritið þitt fær liveViewUrl frá miðlaranum þínum er það ótrúlega einfalt að birta rauntímastrauminn, þökk sé BrowserLiveView íhlutinum.

// Dæmi um kóða á viðskiptavinahlið (React íhlutur)
import React, { useEffect, useState } from 'react';
import { BrowserLiveView } from 'bedrock-agentcore';

interface LiveAgentViewerProps {
    liveViewUrl: string;
}

const LiveAgentViewer: React.FC<LiveAgentViewerProps> = ({ liveViewUrl }) => {
    if (!liveViewUrl) {
        return <p>Bíður eftir Live View vefslóð...</p>;
    }

    return (
        <div style={{ width: '100%', height: '600px', border: '1px solid #ccc' }}>
            <BrowserLiveView url={liveViewUrl} />
        </div>
    );
};

// Í aðal App íhlutnum þínum eða síðu:
// const MyPage = () => {
//     const [currentLiveViewUrl, setCurrentLiveViewUrl] = useState<string | null>(null);
//
//     useEffect(() => {
//         // Sækja liveViewUrl frá bakenda þínum
//         fetch('/api/start-agent-session')
//             .then(res => res.json())
//             .then(data => setCurrentLiveViewUrl(data.liveViewUrl));
//     }, []);
//
//     return (
//         <div>
//             <h1>Lifandi sýn gervigreindarstýringar</h1>
//             <LiveAgentViewer liveViewUrl={currentLiveViewUrl} />
//         </div>
//     );
// };

Með einfaldlega url={liveViewUrl}, sér BrowserLiveView íhluturinn um flókna smáatriði þess að koma á WebSocket tengingu, neyta DCV straumsins og birta lifandi myndstrauminn innan tilgreindra vídda. Þessi lágmarks JSX samþætting einfaldar þróun framenda verulega, sem gerir þér kleift að einbeita þér að notendaupplifuninni í kringum lifandi stýringuna.

3. Tengja gervigreindarstýringu til að knýja vafrann

Síðasta skrefið tengir greind gervigreindarstýringarinnar þinnar við raunverulegar vafraaðgerðir innan einangraða fundarins. Þó að BrowserLiveView veitir sjónræna endurgjöf, notar gervigreindarstýringin þín Playwright CDP (Chrome DevTools Protocol) til að hafa samskipti við vafrann á forritunarlegum hátt.

Forritamiðlarinn þinn, sem einnig hýsir gervigreindarstýringuna þína, mun nota page eignina á Browser hlutnum (sem er Playwright Page hlutur) til að framkvæma vafraaðgerðir.

// Dæmi um kóða á miðlarahlið (framhald frá skrefi 1)
// Að því gefnu að þú hafir Playwright-líkt viðmót eða beina Playwright notkun
import { Browser } from 'bedrock-agentcore';
import { AgentCoreClient } from '@aws-sdk/client-bedrock-agentcore';
import { BedrockRuntimeClient, InvokeModelCommand } from "@aws-sdk/client-bedrock-runtime";

// ... (fyrri uppsetning fyrir vafra tilbúning) ...

async function driveAgent(sessionId: string) {
    const browser = new Browser(agentCoreClient, { sessionId }); // Tengjast aftur við núverandi fund
    await browser.connect(); // Tengjast vafrafundinum

    const page = browser.page; // Fá Playwright Page hlutinn

    // Dæmi um rökfræði gervigreindarstýringar (einfölduð til skýringar)
    // Hér myndir þú samþætta LLM þinn (t.d. Anthropic Claude í gegnum Bedrock Converse API)
    // til að ákvarða aðgerðir byggðar á skilaboðum notenda og innihaldi síðunnar.
    console.log("Stýringin fer á example.com...");
    await page.goto('https://www.example.com');
    console.log("Stýringin beið í 3 sekúndur...");
    await page.waitForTimeout(3000); // Líkir eftir vinnslutíma

    console.log("Stýringin slær inn í leitarreit (ímyndað)...");
    // Dæmi: await page.type('#search-input', 'Amazon Bedrock AgentCore');
    // Dæmi: await page.click('#search-button');

    const content = await page.content();
    // Nota LLM til að greina 'content' og ákveða næstu skref
    const bedrockRuntimeClient = new BedrockRuntimeClient({ region: 'us-east-1' });
    const response = await bedrockRuntimeClient.send(new InvokeModelCommand({
        modelId: "anthropic.claude-3-sonnet-20240229-v1:0", // eða þitt valda líkan
        contentType: "application/json",
        accept: "application/json",
        body: JSON.stringify({
            messages: [
                {
                    role: "user",
                    content: `Greindu innihald þessarar vefsíðu og leggðu til næstu aðgerð: ${content.substring(0, 500)}`
                }
            ],
            max_tokens: 200,
        }),
    }));
    const decodedBody = new TextDecoder("utf-8").decode(response.body);
    const parsedBody = JSON.parse(decodedBody);
    console.log("Gervigreindarlíkan lagði til aðgerð:", parsedBody.content[0].text);

    // Byggt á tillögu LLM, framkvæma frekari síðuaðgerðir...

    // Ekki gleyma að loka vafrafundinum þegar lokið er
    // await browser.close();
}

// Eftir að fundurinn er hafinn og vefslóðin fengin, myndir þú síðan kalla driveAgent(sessionId)

Þessi samskiptalykkja — þar sem gervigreindarstýringin þín greinir innihald síðunnar, ákvarðar næstu aðgerð og framkvæmir hana í gegnum Playwright CDP — myndar kjarna sjálfstæðs vafra stýringar. Allar þessar aðgerðir eru sjónrænt birtar í rauntíma í gegnum BrowserLiveView íhlutinn á skjá notandans.

Opnar nýja möguleika með innfelldum gervigreindarstýringum

Samþætting Amazon Bedrock AgentCore BrowserLiveView er meira en bara tæknilegur eiginleiki; það er paradigmaskipting í því hvernig notendur hafa samskipti við og treysta gervigreindarstýringum. Með því að fella inn rauntíma sjónræna endurgjöf geta þróunaraðilar búið til gervigreindar-knúin forrit sem eru ekki aðeins skilvirk heldur einnig gagnsæ, endurskoðunarhæf og notendavæn.

Þessi geta er sérstaklega umbreytandi fyrir forrit sem fela í sér:

  • Flókin verkflæði: Sjálfvirknivæðing margra þrepa ferla á netinu eins og gagnainnfærslu, innskráningu eða eftirfylgni reglugerða, þar sem sýnileiki á hverju skrefi er mikilvægur.
  • Viðskiptavinastuðningur: Að leyfa starfsmönnum að fylgjast með gervigreindarstoðverkum sem leysa fyrirspurnir viðskiptavina eða vafra um kerfi, sem tryggir nákvæmni og veitir tækifæri til íhlutunar.
  • Þjálfun og kembileit: Að veita þróunaraðilum og endanotendum öflugt tól til að skilja hegðun stýringarinnar, kemba vandamál og þjálfa stýringar með beinni athugun.
  • Auknar endurskoðunarleiðir: Að búa til sjónrænar skrár yfir aðgerðir stýringarinnar, sem hægt er að sameina með fundarupptökum í Amazon S3 fyrir ítarlega endurskoðun eftir á og samræmi.

Hæfileikinn til að streyma vafrasessjónum beint frá AWS skýinu til viðskiptavinavafra, framhjá forritamiðlaranum fyrir myndstrauminn, býður upp á verulega kosti hvað varðar afköst og skalanleika. Þessi arkitektúr lágmarkar biðtíma og dregur úr byrðinni á bakenda innviði þínum, sem gerir þér kleift að útfæra mjög móttækilegar og skalanlegar gervigreindarstýringarlausnir.

Með því að taka upp BrowserLiveView, ertu ekki bara að byggja gervigreindarstýringar; þú ert að byggja traust, stjórn og ríkari notendaupplifun. Skoðaðu möguleikana og styrktu notendur þína með sjálfstrausti til að fela flókin vefverkefni snjöllum stýringum.

Algengar spurningar

What is the Amazon Bedrock AgentCore BrowserLiveView component and how does it function?
The Amazon Bedrock AgentCore BrowserLiveView component is a crucial part of the Bedrock AgentCore TypeScript SDK, designed to embed a real-time video feed of an AI agent's browsing session directly into a React application. It operates by receiving a SigV4-presigned URL from your application server, which then establishes a persistent WebSocket connection to stream video data via the Amazon DCV protocol from an isolated cloud browser session. This direct streaming mechanism ensures low latency and high fidelity, allowing users to observe every action an AI agent takes on a webpage, from navigation to form submissions, without the video stream passing through your server.
How does embedding Live View enhance user trust and confidence in AI agents?
Embedding Live View significantly boosts user trust and confidence by providing unparalleled transparency into an AI agent's operations. Instead of a 'black box' experience, users gain immediate visual confirmation of the agent's actions, observing its progress and interactions in real-time. This visual feedback loop helps users understand that the agent is on the correct path, interacting with the right elements, and progressing as expected. This is particularly valuable for complex or sensitive workflows, where visual evidence can reassure users that the agent is performing its tasks accurately and responsibly, enhancing overall confidence and allowing for timely intervention if necessary.
What are the primary architectural components involved in integrating a Live View AI agent?
The integration of a Live View AI agent involves three main architectural components. First, the user's web browser, running a React application, hosts the BrowserLiveView component, which renders the real-time stream. Second, the application server acts as the orchestrator, managing the AI agent's logic, initiating browser sessions via the Amazon Bedrock AgentCore API, and generating secure, time-limited SigV4-presigned URLs for the Live View stream. Third, the AWS Cloud hosts Amazon Bedrock AgentCore and Bedrock services, providing the isolated cloud browser sessions, automation capabilities (via Playwright CDP), and the DCV-powered Live View streaming endpoint. A key design point is that the DCV stream flows directly from AWS to the user's browser, bypassing the application server for optimal performance.
Can developers utilize any AI model or agent framework with Amazon Bedrock AgentCore's Live View?
Yes, developers have the flexibility to use any AI model or agent framework of their choice with Amazon Bedrock AgentCore's Live View. While the provided example often demonstrates integration with the Amazon Bedrock Converse API and models like Anthropic Claude, the BrowserLiveView component itself is model-agnostic. This means that the real-time visual streaming functionality is decoupled from the AI agent's underlying reasoning and decision-making logic. As long as your chosen AI agent or framework can interact with the browser automation endpoint provided by AgentCore (typically via Playwright CDP), you can leverage Live View to provide visual feedback to your users, making it a highly adaptable solution for various AI-powered applications.
What are the essential prerequisites for setting up a Live View AI browser agent with Amazon Bedrock AgentCore?
To set up a Live View AI browser agent, several prerequisites are necessary. Developers need Node.js version 20 or later for the server-side logic and React for the client-side application. An AWS account in a supported region is required, along with AWS credentials that have the necessary Amazon Bedrock AgentCore Browser permissions. It's crucial to follow the principle of least privilege for IAM permissions and use temporary credentials (e.g., from AWS IAM Identity Center or STS) rather than long-lived access keys for enhanced security. Additionally, the Amazon Bedrock AgentCore TypeScript SDK (`bedrock-agentcore`) and potentially the AWS SDK for JavaScript (`@aws-sdk/client-bedrock-runtime`) if using Bedrock models, must be installed in your project.
How does the DCV protocol facilitate real-time, low-latency video streaming for Live View?
The Amazon DCV (NICE DCV) protocol is instrumental in providing real-time, low-latency video streaming for the BrowserLiveView component. DCV is a high-performance remote display protocol designed to deliver a rich user experience over varying network conditions. In the context of AgentCore, it efficiently encodes and transmits the visual output of the isolated cloud browser session directly to the user's React application via a WebSocket connection. By optimizing data compression and transmission, DCV ensures that the visual feed of the AI agent's actions appears smooth and responsive, minimizing lag and enabling users to observe the agent's behavior as if it were happening locally on their machine, without the need for complex streaming infrastructure setup by the developer.

Fylgstu með

Fáðu nýjustu gervigreindarfréttirnar í pósthólfið.

Deila