Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

一些为 AI 提供打开 URL 的能力的 API,均设计为部署在 AWS Lambda 上的无服务器云函数。

Notifications You must be signed in to change notification settings

SmartHypercube/browse-api-serverless

Repository files navigation

browse-api-serverless

一些为 AI 提供打开 URL 的能力的 API,均设计为部署在 AWS Lambda 上的无服务器云函数。

目前包含 4 个 API:

  • browse-text:用 headless Chromium 尝试打开网页,提取网页标题和显示的所有文字。
  • github:获取 GitHub 仓库的元信息和 README。
  • pdf:下载 PDF 并提取其中的文字。
  • youtube:获取 YouTube 视频标题、所属频道、描述、字幕。

部署

安装并配置以下依赖:

然后在项目根目录下执行 make。运行结束后会输出各 API 的 URL。

使用

每个 API 都应当使用 POST 方法调用,请求体类似如下格式:

{
 "url": "https://example.com/"
}

每个 API 成功时都返回类似如下格式的 JSON。如果返回码不是 200,说明这个 API 无法打开指定的 URL。注意:某个 API 能打开某个 URL,并不意味着这个 API 是最佳选择。例如 browse-text API 可以打开 YouTube 视频的 URL,但是 youtube API 可能是更好的选择。

{
 "truncated": false,
 "template": [
 {"field": "foo", "name": "Foo", "type": "inline"},
 {"field": "bar", "name": "Bar", "type": "inline"},
 {"field": "baz", "name": "Baz", "type": "block"},
 {"field": "qux", "name": "Qux", "type": "block"}
 ],
 "data": {
 "foo": "some text",
 "baz": "some text\nmore text",
 "qux": "some text\nmore text"
 }
}

其中 truncated 指示是否截断了部分数据以满足 AWS Lambda 的 6MB 返回值大小限制,template 列出了 data 中所有可能的字段,以及如何格式化以便提供给 AI 模型的建议。

用户可以忽略 template 部分,直接以 JSON 格式传递 data 给 AI 模型,也可以按 template 给出的建议,用类似如下格式拼接字符串:

Foo: some text
Baz:
some text
more text
Qux:
some text
more text

About

一些为 AI 提供打开 URL 的能力的 API,均设计为部署在 AWS Lambda 上的无服务器云函数。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /