@ computesdk/ 代理37
Agent37 ComputeSDK的提供商 - AI代理的持久Linux sandbox,任何端口都有签名的URL,以及可选的性能类型,其核心被持有.
安装
npm install @computesdk/agent37
设置
- 创建 API 密钥 代理37.com/dashboard/cloud/api-keys (英语)
- 设置环境变量 :
export AGENT37_API_KEY=sk_live_your_api_key
快速启动
import { compute } from 'computesdk';
import { agent37 } from '@computesdk/agent37';
compute.setConfig({
provider: agent37({ apiKey: process.env.AGENT37_API_KEY }),
});
const sandbox = await compute.instances.create();
const result = await sandbox.runCommand('node -v && python3 --version');
console.log(result.stdout);
await sandbox.destroy();
或者直接给供货厂打电话:
import { agent37 } from '@computesdk/agent37';
const sdk = agent37({ apiKey: process.env.AGENT37_API_KEY });
const sandbox = await sdk.sandbox.create({ type: 'performance', cpu: 4, memory: 16384 });
配置
interface Agent37Config {
/** Agent37 API key - if not provided, will use AGENT37_API_KEY env var */
apiKey?: string;
/** API base URL - defaults to AGENT37_BASE_URL, then https://api.agent37.com */
baseUrl?: string;
/** Exec base URL - defaults to AGENT37_EXEC_URL, then https://sandbox.agent37.app */
execUrl?: string;
/** Run commands as root (default true). Set false to run as the image's own user. */
runAsRoot?: boolean;
}
创建选项
| 选项 | 地图到 | 页:1 |
|---|---|---|
templateId | template | 模板名称. 默认 agent37-base (德比安有节点,Python,git和构建工具). |
type | type | default, (中文(简体) ), performance (一整台其核心为其所持有的机器)或 vm。 。 。 . |
cpu (或 vcpus, (中文(简体) ), cpus(中文(简体) ) | resources.cpu | vCPUs. (中文(简体) ). 大小为2 vCPU / 4. GB, 4. 8, 4. 16和 4. 32. |
memory (MB,或 memoryMiB, (中文(简体) ), memoryMb(中文(简体) ) | resources.memory | 圆通至通通GB. |
sizeClass | resources | 标准大小 : md (2 vCPU / 4 GB) 并 lg (4/8) (中文(简体) ). xs, (中文(简体) ), sm, (中文(简体) ), xl 财务报告和审定财务报表 2xl 失败 unsupported; 组合 sizeClass 与 cpu编号 :memory 是一个 conflict。 。 。 . |
diskMb (或 diskMiB(中文(简体) ) | resources.disk | 圆通至通通GB. |
region | region | us (违约), eu 或者说 ap-south。 。 。 . |
envs | env | 沙盒的环境变量 . |
name, (中文(简体) ), metadata | name, (中文(简体) ), metadata | 标签在实例中返回. |
特征
- 命令执行 与
cwd, (中文(简体) ),env和背景命令 - 文件系统 读取、写入、列表、 mkdir, 存在并删除
- 端口 URL 服务器数字 :
getUrl({ port })返回一个没有 API 密钥而到达端口的已签名 URL - 持久性:一个沙盒保存其文件并安装了软件包,直到您销毁它
限制
- 命令完成后返回输出; 没有流线 .
runCommand是因为timeout停止等待结果。 命令本身一直在沙盒里运行.- 文件系统内容为UTF-8文本,不是任意的二进制. 在远程 shell 的可写文件中, 写入使用绑定的执行请求和唯一模式 0600 中转文件
TMPDIR(默认)/tmp,然后覆盖到位。 Stage 不需要目的地- 方向写入权限 。 保留了现有的权限和硬链接,并遵循了同义链接. 何时flock可用(如底模),一个inode锁防止并行 SDK 写到同一个inode 之间互出;锁错误被宣传. 未定义图像flock回到普通的重定向,所以同时写到同一个inode可以互出. 读者可在两种情况下观察进行中的最后副本。 上传失败使目的地保持不变;在最后发布期间失败可以留下一空或部分文件. - 使用 GNU 读取
stat, (中文(简体) ),dd财务报告和审定财务报表base64以每个执行器最多 256 KB 传输,低于 512 KB 输出上限,然后跨块边界解码 UTF-8。 支持空文件和同义链接目标. 截断、 错误的块、 读取错误、 短读和检测到文件变化, 而不是返回部分内容 。 读取不是快照: 在传输时避免修改文件 。 完整的字符串仍然保存在客户端记忆中. - 沙盒没有寿命限制,所以总是打电话
destroy()当你完成.