【大家的项目】AIScript - Rust 编写的新一代编程语言

简介

AIScript 是一种独特的解释型编程语言和 Web 框架的结合体,两者都用 Rust 编写,旨在帮助开发者轻松构建 AI 应用程序。该语言语法汲取了 Python、JavaScript 和 Rust 的灵感,结合它们的优势创造出直观、强大且易于使用的语言。

`AIScript` 仍处于早期开发阶段。请暂时不要在生产环境中使用。

编程语言

作为一种编程语言,AIScript 从零开始构建了自定义解释器:

·函数是一等公民,支持面向对象编程范式

·内置 AI 原语,包括提示词(prompt)、AI 函数和代理(agent)功能

·动态类型系统,结合有针对性的静态类型检查以提高安全性

·内置类似于 Python Pydantic 的数据验证    

·简单而强大的错误处理机制,受 Rust、Go 和 Zig 启发

·丰富的标准库,底层利用 Rust 的生态系统

·自动垃圾回收进行内存管理

Web 框架

AIScript 不仅仅是一种语言,它是一个完整的 Web 开发解决方案:

·优雅直观的路由 DSL,用于定义端点

·自动参数验证,提供清晰的错误消息

·自动生成 OpenAPI 架构和文档

·基于 Rust 最佳实践,底层使用 axum 和 sqlx

·结合了 Rust 的 axum 性能和类似 Python Flask 的简单性

·内置数据库模块(std.db.pg 和 std.db.redis)

·内置身份验证和社交登录功能

·通过简单配置轻松启用电池内置(battery-included)功能

AIScript 如何工作

$ export OPENAI_API_KEY=$ cat web.ai      get / {          """一个用于询问 LLM 的 API"""                 query {              """要提问的问题"""              @string(min_len=3, max_len=100) // 使用内置指令 @string 验证参数              question: str          }                 // `ai` 和 `prompt` 是关键字          ai fn ask(question: str) -> str {              let answer = prompt question;              return answer;          }          // 使用 query.name 或 query["name"] 访问查询参数          let answer = ask(query.question);          return { answer };      }             $ aiscript serve web.ai      Listening on http://localhost:8080             $ curl http://localhost:8080      {          "error": "Missing required field: question"      }             $ curl http://localhost:8080?question=Hi      {          "error": "Field validation failed: question: String length is less than the minimum length of 3"      }             $ curl http://localhost:8080?question=What is the capital of France?      {          "answer": "The capital of France is Paris."      }

您可以打开 http://localhost:8080/redoc 查看自动生成的 API 文档。

使用场景

AIScript 在以下场景中表现出色:

·AI 驱动的 API:当您需要构建利用 LLM 和其他 AI 服务的 API 时

·原型设计:无需配置开销,快速构建和测试想法

·微服务:创建轻量级、专注的服务,最小化样板代码

·数据验证:当请求/响应验证对您的应用程序至关重要时

·内部工具:使用集成文档快速构建工具

理念

AIScript 秉承以下核心原则:

·约定优于配置:开箱即用的合理默认设置

·渐进式复杂性:易于上手,需要时又功能强大

·AI 原生设计:从头开始为 AI 时代而构建

·开发者幸福感:首先关注开发者体验

·不牺牲性能:无需在速度和生产力之间做选择

官网:https://aiscript.dev/

GitHub: https://github.com/aiscriptdev/aiscript

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值