Мичиганы их сургуулийн профессор Жейсон Марс хиймэл оюун ухааны системүүдтэй шууд ажиллах зориулалт бүхий шинэ хэл болон ажиллах орчныг танилцууллаа.
Мичиганы их сургуулийн профессор Жейсон Марс хиймэл оюун ухаан (AI) болон AI агентуудыг системийн үндсэн бүрэлдэхүүн хэсэг хэмээн үзэх “Jac” програмчлалын хэл, “Jaseci” ажиллах орчныг хөгжүүлжээ. Хойд Каролина мужийн Рали хотод болсон All Things Open чуулганы үеэр тэрээр одоогийн програм хангамжийн хэрэгслүүд нь хүний хэрэглээнд зориулагдсан тул AI агентуудын хэрэгцээг бүрэн хангаж чадахгүй байгааг онцлон тэмдэглэв.
Jac хэл нь Python-той төстэй бүтэцтэй бөгөөд TypeScript болон Python-ийн сангуудыг бүрэн ашиглах боломжтой юм. Энэхүү хэл нь Python байт код, JavaScript болон эх кодууд руу хөрвөх чадвартай төдийгүй LLVM хөрвүүлэгчийг ашиглан санах ойн аюулгүй байдал, гүйцэтгэлийн өндөр үзүүлэлтийг хангадаг. Мөн корпорацын шаардлагад нийцүүлэх зорилгоор Jac кодыг TypeScript, Python эсвэл C хэл рүү буцаан хөрвүүлэх “eject” функцийг багтаажээ.
Архитектурын хувьд Jac нь өгөгдлийг хүснэгт бус, харин график хэлбэрээр тодорхойлдог нь агентуудад өгөгдөл боловсруулах үйл явцыг хялбаршуулдаг. Агентууд өгөгдлийг санах ой эсвэл үүлэн серверээс татаж авахын оронд “walker” хэмээх механизмыг ашиглан графикийн дагуу мэдээллийг шууд боловсруулдаг байна. Энэ нь олон “walker” зэрэг ажиллах боломжийг олгож, гүйцэтгэлийг хурдасгадаг.
Жейсон Марс шинэ хэлнийхээ үр ашгийг батлахын тулд Jac болон LangGraph-ийг харьцуулсан туршилтыг явуулжээ. Туршилтаар AI агентууд Jac ашиглан илүү төвөгтэй, олон үйлдэлт ажлыг зэрэг гүйцэтгэх чадвартай програм бүтээсэн бол LangGraph-ийн тусламжтайгаар зөвхөн шугаман дараалсан үйлдэл хийх боломжтой байв. Одоогоор Jac системийг GraphClaw, Skooch, Tobu зэрэг арилжааны жижиг үйлчилгээнүүдэд ашиглаж байна.
Дэлгэрэнгүйг эх сурвалжаас харах
↓Эх сурвалжийг нээх ↓
Most programming languages were written for human programmers, but that’s about to change. University of Michigan professor Jason Mars has developed an academically ambitious language called Jac, and a runtime called Jaseci, that treats AI and AI agents as first-class entities. Mars demonstrated the language and runtime in a talk at the All Things Open conference, held in Raleigh, North Carolina, this week. The tools we use to create software – everything from programming languages to build toolchains – were made for human consumption. They were created before generative AI and are ill-fitted to understand agentic needs. Currently, agents are drowning in polyglot complexity, he argued. “We’re not using these tools anymore. We’re using the agents, and the agents are using those tools. So I don’t want new tools, but I want tools [for] my agents,” he told the audience. One big hungry language In his talk, Mars cited Jarred Sumner, creator of the Bun framework, who spent $165,000 in Anthropic tokens to convert Bun’s Zig code into Rust earlier this year using a pre-release version of Mythos. Mard argued the heavy expense wasn’t so much because the job itself was complicated; it was because everything had to be translated between two human-centered programming languages. “Mythos is supposed to hack into our nuclear reactors and take over the planet like Skynet, but it can’t translate Bun to Rust unless you spend $165,000,” he noted. In Mars’s theory, Jac is a new type of programming language designed to “gobble up” other languages. Specifically, it’s a Python-like language that integrates both the TypeScript and Python runtimes and toolchains. It compiles to Python bytecode, JavaScript, and native machine code. It can make full use of any libraries both in the PyPI and npm ecosystems. And there’s more! Jac has also incorporated the LLVM compiler to implement Rust-style borrow checking and ownership semantics, allowing Jac code to directly benefit from these memory safety rules and performance gains. It can also import C and C++ libraries, thanks to the very same LLVM integration. Mars also described an “eject function,” which can reverse-compile the user’s Jac code into TypeScript, Python, or C to meet corporate compliance. One currently missing language is Java. “If you really need Java, Jac isn’t for Java,” he said. Happy bot, happy lot Just as Jac’s design sets out to battle ecosystem fragmentation, it also attempts to unify architectural fragmentation by defining data structures as graphs. Instead of building and populating a database table, or creating objects from a class, the data’s attributes are defined under node keywords. The relationships among different nodes are defined by edge connections. Local program logic can still use objects, but the core data will be a graph, which can reside in local memory, a storage disk, or cloud server. So, yeah, graph computing. Creating a graph from all your data is more work than just creating database tables and some foreign keys to tie ‘em together, but graphing saves agents a lot of work down the line, he posited. No longer will the agent have to burn tokens extracting data from databases, object blobs, JSON strings, or Python objects. Instead of the agent fetching data hither and processing it over yonder, the agent can dispatch a “walker” to traverse the data structure and process it on the go. Multiple walkers can go down different paths of the graph, resulting in natural parallelism for faster execution. Tidy the abstraction For his All Things Open talk, Mars conducted a bake-off between Jac and LangGraph, an agent orchestration framework that uses Python libraries to build agents. He asked an AI agent to use each platform to build a replica of Greptile, an AI code review tool. With Jac, the agent autonomously built a sophisticated multi-stage app that could call multiple tools in parallel. Using LangGraph, the agent produced a crude linear state machine that could not work in parallel. It was probably weighed down by all of the tools it had to use, Mars concluded. Mars’s takeaway from this exercise: The tools we provide the AI determine the quality of the output. Thus far, the language and runtime have been used in a number of smaller commercial AI-related services, such as the GraphClaw multi-agent AI platform, the Skooch scheduler, and Tobu’s personal memory platform. Whether developers and agents gravitate towards Jac’s promise as a unified language remains to be seen, but it certainly is giving other Python agent frameworks a run for their money. ®

