返回

实时数据

Spark 运行在一个密封的沙箱里,所以它自己没法给你看实时股价或今天的天气。它会请 Lino 的门卫(broker)——坐在 Spark 和互联网之间的把关者——替它去取数据。门卫只从下面允许清单(allowlist)上的来源获取数据。

它如何工作

Spark 自己永远不上网。它只是递给门卫一个请求,比如:

「帮我查一下 AAPL 的报价。」

在任何东西离开你的电脑之前,门卫会先检查这个请求:

  1. **这类请求在允许清单上吗?**不在的一律拒绝。
  2. **细节合法吗?**比如股票代码必须像个股票代码,纬度必须在 −90 到 90 之间。
  3. **是不是太频繁?**同一个请求大约每秒最多回应一次。

只有全部检查通过,才由 Lino——而不是 Spark——发出请求,再把结果交回去。Spark 的代码从不接触网络,也永远不会有密钥被放进 Spark 里。

**永不打破的一条规则:**不可信的代码、密钥和开放的网络连接,永远不会同时出现在同一个地方。

现在 Spark 能获取哪些数据

这张表直接由门卫自己的配置生成,所以总是和实际允许的内容一致。

能力数据源需要密钥?示例用途
股票报价Yahoo Finance否一个盯盘 Spark,显示实时价格和当日涨跌
股票历史行情(OHLC)Yahoo Finance否可切换时间区间的蜡烛图(K 线)
城市地理编码Open-Meteo Geocoding否一个天气 Spark,用户输入城市名搜索定位
天气预报Open-Meteo否一个仪表盘 Spark,显示当前天气和 7 天预报
货币汇率Frankfurter (ECB)否一个实时汇率换算 Spark
历史汇率Frankfurter (ECB)否一个显示过去一年美元/人民币汇率走势的 Spark
加密货币价格CoinGecko否一个加密货币盯盘 Spark,显示实时价格和 24h 涨跌
加密货币历史价格CoinGecko否一个可切换时间范围的比特币价格走势图 Spark

请求清单之外的任何东西都会被拒绝,Spark 收到的是一个错误而不是数据。

做一个用实时数据的 Spark

用平常的话向 Lino AI 提出来就行——它知道有哪些来源可用。例如:

  • 「做一个 Spark,显示这张画布(Canvas)上那些股票的当前价格和当日涨跌。」
  • 「做一个天气 Spark,我输入城市就能看到未来 7 天。」
  • 「一个按今天汇率把欧元换算成日元的换算器。」

Lino AI 只能使用上表中的来源。

须知

  • **实时数据需要网络连接。**没有网络时请求会失败,Spark 收到的是一个错误而不是数据。
  • 数据来自"数据源"一列中的公开来源,内容以它们提供的为准。

接下来会有什么

  • 需要密钥的服务——付费 API 和你自己的后端;密钥始终留在门卫手里,绝不进入 Spark。
  • 更多免费公共数据,比如资料查询——同一个门卫,允许清单上多几条而已。

安全模型始终不变:给 Spark 更多数据,意味着往门卫的允许清单里加条目,而绝不是打开沙箱。

相关