For the complete documentation index, see llms.txt. This page is also available as Markdown.

Development

Iterate quickly against a transient cloud session

For building and testing, the SDK creates a transient session on demand. You connect, run inference, and the session idles out when you stop — nothing to provision or tear down.

Connect and run

Provide a Pop when you open the session so EyePop can schedule the right compute before any media is processed.

from eyepop import EyePopSdk
from eyepop.worker.worker_types import InferenceComponent, Pop

pop = Pop(components=[
    InferenceComponent(ability="eyepop.person:latest")
])

with EyePopSdk.sync_worker(pop=pop) as endpoint:
    result = endpoint.upload("image.jpg").predict()
    print(result)
import { EyePop, PopComponentType } from '@eyepop.ai/eyepop'

const endpoint = await EyePop.workerEndpoint({
    pop: {
        components: [
            { type: PopComponentType.INFERENCE, ability: 'eyepop.person:latest' },
        ],
    },
}).connect()

try {
    const results = await endpoint.process({ source: { path: 'image.jpg' } })
    for await (const result of results) {
        console.log(result)
    }
} finally {
    await endpoint.disconnect()
}

A new transient session is created each time you connect with a Pop, and the pipeline it created is deleted when you disconnect. The SDK does not delete the session; it idles out on its own once you stop using it. Models load on first use, so the first request carries a cold start — when you need production latency, promote the same Pop to a persistent Deployment.

For video, streaming, image groups, and visualization, open the Python SDK or Node SDK section in this site's navigation.

Next steps

  • Deployment — promote to a persistent session with no cold start

  • Pops — chain abilities into a pipeline

  • Quickstart — the shortest walkthrough from zero

Last updated