[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-72069":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":23,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":16,"starSnapshotCount":16,"syncStatus":30,"lastSyncTime":31,"discoverSource":32},72069,"ell","MadcowD\u002Fell","MadcowD","A language model programming library.","http:\u002F\u002Fdocs.ell.so\u002F",null,"Python",5873,345,52,166,0,1,3,38.62,"MIT License",false,"main",true,[25,26],"ai","prompt-engineering","2026-06-12 02:02:58","\u003Cpicture>\n  \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fell-wide-dark.png\">\n  \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fell-wide-light.png\">\n  \u003Cimg alt=\"ell logo that inverts based on color scheme\" src=\"https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fell-wide.png\">\n\u003C\u002Fpicture>\n\n--------------------------------------------------------------------------------\n\n[![Documentation Status](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocumentation-go)](https:\u002F\u002Fdocs.ell.so\u002F) [![Install](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fget_started-blue)](https:\u002F\u002Fdocs.ell.so\u002Finstallation) [![Discord](https:\u002F\u002Fdcbadge.limes.pink\u002Fapi\u002Fserver\u002FvWntgU52Xb?style=flat)](https:\u002F\u002Fdiscord.gg\u002FvWntgU52Xb) [![X (formerly Twitter) Follow](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fwgussml)](https:\u002F\u002Fx.com\u002Fwgussml)\n\n\n```bash\n\npip install -U \"ell-ai[all]\"\n```\n\n`ell` is a lightweight, functional prompt engineering framework built on a few core principles:\n\n### 1. Prompts are programs, not strings.\n\nPrompts aren't just strings; they are all the code that leads to strings being sent to a language model. In `ell` we think of one particular way of using a language model as a discrete subroutine called a **language model program**.\n\n```python\nimport ell\n\n@ell.simple(model=\"gpt-4o\")\ndef hello(world : str):\n    \"\"\"You are a helpful assistant that writes in lower case.\"\"\" # System Message\n    return f\"Say hello to {world[::-1]} with a poem.\"    # User Message\n\nhello(\"sama\")\n```\n\n![alt text](https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fgif1.webp)\n\n### 2. Prompts are actually parameters of a machine learning model.\n\n\nThe process of prompt engineering involves many iterations, similar to the optimization processes in machine learning. Because LMPs are just functions, `ell` provides rich tooling for this process.\n\n![ell demonstration](https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fversions_small.webp)\n\n\n`ell` provides **automatic versioning and serialization of prompts** through static and dynamic analysis and  `gpt-4o-mini` **autogenerated commit messages** directly to a *local store*. This process is similar to `checkpointing` in a machine learning training loop, but it doesn't require any special IDE or editor - it's all done with regular Python code.\n\n### 3. Tools for monitoring, versioning, and visualization\n\nPrompt engineering goes from a dark art to a science with the right tools. **Ell Studio is a local, open source tool for prompt version control, monitoring, visualization**. With Ell Studio you can empiricize your prompt optimization process over time and catch regressions before it's too late.\n\n\u003Cpicture>\n  \u003Csource srcset=\"https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fell_studio_better.webp\" type=\"image\u002Fwebp\">\n  \u003Cimg src=\"docs\u002Fsrc\u002F_static\u002Fell_studio_better.webp\" alt=\"ell studio demonstration\">\n\u003C\u002Fpicture>\n\n```bash\nell-studio --storage .\u002Flogdir \n```\n\n\n### 4. Multimodality should be first class\n\nLLMs can process and generate various types of content, including text, images, audio, and video. Prompt engineering with these data types should be as easy as it is with text.\n\n```python\nfrom PIL import Image\nimport ell\n\n\n@ell.simple(model=\"gpt-4o\", temperature=0.1)\ndef describe_activity(image: Image.Image):\n    return [\n        ell.system(\"You are VisionGPT. Answer \u003C5 words all lower case.\"),\n        ell.user([\"Describe what the person in the image is doing:\", image])\n    ]\n\n# Capture an image from the webcam\ndescribe_activity(capture_webcam_image()) # \"they are holding a book\"\n```\n![ell demonstration](https:\u002F\u002Fdocs.ell.so\u002F_static\u002Fmultimodal_compressed.webp)\n\n`ell` supports rich type coercion for multimodal inputs and outputs. You can use PIL images, audio, and other multimodal inputs inline in `Message` objects returned by LMPs.\n\n### ...and much more!\n\nRead more in the [docs](https:\u002F\u002Fdocs.ell.so\u002F)!\n\n## Installation\nTo install `ell` and `ell studio`, you can use pip. Follow these steps:\n\n1. Open your terminal or command prompt.\n2. Run the following command to install the `ell-ai` package from PyPI:\n\n   ```bash\n   pip install ell-ai[all]\n   ```\n\n3. Verify the installation by checking the version of `ell`:\n\n   ```bash\n   python -c \"import ell; print(ell.__version__)\"\n   ```\n\nThis will install both `ell` and `ell studio` on your system, allowing you to start using the tools for prompt engineering and visualization.\n\n\n\n## Next Steps\n\nExplore the [documentation](https:\u002F\u002Fdocs.ell.so\u002F) to learn more about `ell` and its features. Follow the [Getting Started guide](https:\u002F\u002Fdocs.ell.so\u002Fgetting_started.html) to create your first Language Model Program. Join our [Discord community](https:\u002F\u002Fdiscord.gg\u002FvWntgU52Xb) to connect with other users and get support.\n","ell 是一个轻量级的功能性提示工程框架，旨在通过编程方式定义和优化语言模型的交互。它将提示视为程序而非简单的字符串，允许用户创建称为“语言模型程序”的子例程，并支持自动版本控制、序列化以及生成提交信息等功能，便于管理和迭代提示。此外，ell 提供了丰富的工具集，包括用于监控、版本控制和可视化的本地开源工具 Ell Studio，帮助开发者科学地进行提示工程。适用于需要对语言模型交互进行精细控制和持续优化的应用场景，如复杂的对话系统开发或基于多模态内容生成的任务。",2,"2026-06-11 03:40:13","high_star"]