今日已更新 208 条资讯 | 累计 37759 条内容
关于我们

标签:#RAM

找到 2557 篇相关文章

AI 资讯

I Built a Chrome Extension to Download Telegram Media More Easily

Introduction Telegram has become one of the most popular platforms for sharing files, videos, images, and other media. However, when using Telegram Web, I found that saving media files was not always convenient. For example: downloading videos from channels saving multiple images managing large files The process usually requires several manual steps. So I decided to build a Chrome Extension to make Telegram media downloads easier. The project is called TGVideoDown. Website: https://tgvideodown.com Why build a Chrome Extension? At first, I considered building a standalone desktop application. But I realized that many Telegram users already use Telegram Web inside their browsers. A browser extension provides a simpler workflow: Open Telegram Web ↓ Find the media file ↓ Click download ↓ Save directly Users don't need: additional software complicated setup third-party upload services Technical implementation TGVideoDown is built with Chrome Extension APIs. Main technologies include: Content Script Used to interact with Telegram Web pages. Because Telegram Web is a dynamic application, the extension needs to handle: dynamic DOM updates asynchronous loading user interactions Chrome Downloads API Used to manage browser downloads. Example: chrome.downloads.download({ url: fileUrl, filename: fileName }) Storage API Used for storing user preferences and extension settings. Features Currently TGVideoDown supports: Telegram video downloads Telegram image downloads Telegram audio downloads Telegram GIF downloads Telegram file downloads Large file downloads Batch media downloading Challenges during development Handling dynamic pages Telegram Web uses a highly dynamic frontend. Traditional HTML parsing is not enough. The extension needs to monitor page changes and react when new media elements appear. Download experience Large media files require a smoother download process. The goal was to make downloading as simple as possible: Click → Download → Save Current sta

2026-08-04 原文 →
AI 资讯

Token Cost Optimization: The Complete Guide to Building Cost-Efficient LLM Applications

Part 1 : Understanding Token Economics, Hidden Costs, and the Fundamentals Every AI Engineer Must Know Table of Contents Introduction Why Token Cost Optimization Matters More Than Ever Understanding What a Token Really Is How LLM Providers Charge for Tokens Input Tokens vs Output Tokens Why "Cheap Prompts" Can Become Expensive Hidden Sources of Token Costs The Real Cost of Production AI Systems How Token Costs Scale with Users The Cost Optimization Mindset Key Takeaways Introduction If you have ever built an AI application using GPT, Claude, Gemini, Llama, or another large language model, you've probably celebrated the moment your first prompt worked. The model answered intelligently, users loved the experience, and everything seemed perfect. Then came the cloud bill. What initially looked inexpensive suddenly became one of the largest operational costs in your application. Many developers assume AI infrastructure is expensive because of GPUs. Surprisingly, for many production applications, tokens—not GPUs—become the biggest recurring expense . Every prompt, every response, every retrieved document, every conversation history, and every AI agent interaction consumes tokens. Those tokens translate directly into cost. Imagine building an AI customer support chatbot. It serves 500 users during testing, and costs seem negligible. After launch, the application attracts 50,000 daily users. Each interaction now includes system prompts, conversation history, retrieved documents, tool outputs, and generated responses. Without careful optimization, token usage grows exponentially—and so does your bill. This is why token cost optimization is no longer just a performance concern. It has become a core engineering discipline. Just as software engineers optimize CPU and memory, AI engineers must optimize tokens. This guide is designed to help you understand the economics behind token usage before diving into optimization techniques. By mastering these fundamentals, you'll be able

2026-08-04 原文 →
AI 资讯

Generating 10,000 certificates from one HTML template

The day your first cohort completes a course is the day certificates stop being a design job and become an engineering problem. One certificate is a Canva export. Ten thousand is a rendering pipeline with a database table, a queue and a verification page. This post walks through the three ways teams actually build that pipeline, with working Python for each, then covers the two parts most certificate tutorials skip: batching at volume and verification. It is a condensed version of our full guide, How to generate signed digital certificates at scale , which also covers storage, retention and revocation. One scope note up front. Most platform certificates do not need cryptographic signing in the PKI sense. The trust model that 95% of platforms ship is simpler: a unique ID printed on the certificate resolves to a verification page on the issuer's domain. An employer types the ID, the page confirms it. That is the model this post builds. If you need true PKI signing for regulated credentials, the stack is different (Adobe Sign, DocuSign, in-house HSM workflows) and this post is not it. What every certificate needs Whichever approach you pick, the output is the same: Component Detail Layout Landscape A4, 2480x1754 at 200 DPI for print Personal Recipient name with full Unicode support Course Course title and completion date Issuer Issuer name plus a signature image ID Unique certificate ID (UUID or short slug) Verify A URL under the ID pointing to your /verify route The signature image communicates authority but provides zero tamper resistance. The certificate ID plus the verification page is the practical trust layer. Keep both in mind as you read the code. The three approaches at a glance Approach Setup Render time Maintenance PDF library (ReportLab, PDFKit) 1 day 200 to 400 ms Fonts, layout drift, library updates HTML plus headless Chrome 2 hours 1 to 3 sec Chromium, memory, queue workers Template API 5 minutes 1 to 2 sec None Approach 1: a PDF library Python with Repo

2026-08-04 原文 →
AI 资讯

Local development needs a runtime contract, not more terminal tabs

A project can depend on an API, frontend, workers, Docker, databases, tunnels, webhooks, and browser extensions. Remembering which terminal runs each process works—until it doesn’t, and it works even less reliably for coding agents. I built dev-runtime to make that runtime explicit. Simple config files define each session’s working directory, shell command, log file, expected ports, and health endpoints. It runs arbitrary commands inside managed tmux sessions, avoids starting duplicates, and provides shared start , status , doctor , attach , and stop commands. Because the commands live in project config, it is not tied to Node, Python, Docker, or any particular stack. The result is one machine-readable answer to: “What should be running, and is it actually healthy?” Article: https://motia.github.io/blog/using-dev-runtime-to-debug-local-services/ Repository: https://github.com/motia/agent-skills-dev/tree/main/skills/dev-runtime submitted by /u/mutasaki09 [link] [留言]

2026-08-04 原文 →
开发者

Learning Rust · Rust Programming Language Tutorials for Everyone!

The project started in 2016 as a Medium publication and GitBook but later moved to https://github.com/learning-rust/learning-rust.github.io I was updating section by section from time to time. No lies! keeping a Rust tutorial up to date is very tough. Plus, you end up repeating what you already know. It is even tougher, when you have to write code in another language for work. https://learning-rust.github.io updated with lot of rewrites and new themes & widgets like tabs for grouped code samples. submitted by /u/dumindunuwan [link] [留言]

2026-08-04 原文 →
AI 资讯

8051: Building a Custom Disassembler

Industrializing the disassembly of an undocumented processor from a raw binary is a complex task that can be broken down into four key steps: Verify that the binary does not belong to a known processor. Verify that the binary is not obfuscated, compressed, or encrypted code for a known processor. Build an undocumented processor generator. Create the analysis pipeline and custom disassembler generation process. For the first phase of this project, the goal is to build dedicated, lightweight disassemblers—since, for bare-metal binaries, tools like Ghidra require manual processor target selection before analysis can begin. 1. Why Build a Custom Disassembler? To determine whether a binary was compiled for a specific architecture, the strategy consists of disassembling the binary (both statically and dynamically) against candidate instruction sets until: One or more bytes fail to match any valid instruction for that architecture, allowing us to rule it out. The disassembly succeeds completely. (Note: a successful disassembly does not guarantee that the binary was originally intended for that CPU; control flow validity must also be verified). Static disassembly is the first line of defense. However, if it fails due to obfuscation, compression, or encryption, we must escalate to dynamic execution and analysis. Only after systematically eliminating all known architectures can we confidently conclude that we are dealing with a custom or undocumented processor . 2. How to Build Your Custom Disassembler Before deploying heavy machinery for undocumented processors, the logical first step was to check against known architectures. Approach 1: Ghidra and SLAgh Ghidra relies on the SLAgh specification language and maintains an extensive library of processor definitions. The original plan was to leverage its API to extract a normalized opcode mapping table. However, after several attempts, Ghidra proved unsuitable for this specific pipeline for two reasons: Operand Type Loss: Detail

2026-08-04 原文 →
AI 资讯

Analyzing the Current Activity and Relevance of the Pawn Ecosystem in 2026

I have been observing the Pawn ecosystem lately and noticed it is far from inactive, with ongoing development of modern tools like a web-based Pawn Studio designed to replace the outdated Pawno editor, alongside projects such as PawnPlus which continue to receive updates, with version 1.5.3 released just a few months ago in February 2026. This activity seems to be driven largely by the SA-MP and Open.mp modding communities, with open.mp itself being actively maintained and improved, and the broader GitHub ecosystem showing dozens of public repositories related to Pawn and Open.mp . Given this context, I would like to ask whether the Pawn community, especially within the SA-MP and Open.mp scene, is still significant enough to consider the language actively relevant in 2026, or if this is primarily a legacy ecosystem with a concentrated but declining user base. I would be grateful to hear from developers who are currently working with Pawn about their experiences, whether modern tooling like Pawn Studio and PawnPlus have meaningfully improved development, and whether they are seeing new developers enter the scene or if the community is largely composed of seasoned veterans. Thank you for your thoughts. submitted by /u/PutuSuhartawan [link] [留言]

2026-08-04 原文 →
AI 资讯

Article: Enabling Evolutionary Architecture Through the Preservation of Change Locality

Why do simple features suddenly require cross-team negotiations? In this article, explore how boundary drift quietly destroys change locality and increases cognitive load across teams. Learn practical sociotechnical strategies - redistributing mechanics, exposing essential policy, and rehearsing exception paths - to restore domain boundaries and enable a truly evolutionary software architecture. By Michael Fischer, Nicholas Lawrence, Monica Karekar

2026-08-03 原文 →
AI 资讯

I Built a Language Where AI Calls Are Sandboxed by Default

I Built a Language Where AI Calls Are Sandboxed by Default The 30-line Python problem Last month I needed a script that reads server logs, classifies errors with an LLM, summarizes them, and writes a report. In Python, it looked like this: Import the SDK Initialize the client Handle the API response Parse JSON Add asyncio.gather() because sequential calls took 8 seconds Write a custom sandbox because I don't trust LLMs with exec and file writes Package it in Docker because requirements.txt always breaks on the server 80 lines later , it worked. But it felt wrong. I wasn't building logic — I was plumbing. So I asked myself: What if AI operations were language primitives, not library calls? Meet Pipe Pipe is a small runtime (~10 MB, single binary, zero dependencies) that treats summarize , translate , classify , and ask as first-class citizens — on the same level as + , sort , or len . Try it Browser Playground (WASM, no install): pipe-lang.com Source: github.com/MachuraHarry/pipe Docs: pipe-lang.com/docs

2026-08-03 原文 →
AI 资讯

I Let an AI Orb Judge My Facial Expressions While I Code, and Here's What Happened

A deep dive into AURA, the desktop AR companion that watches your face, reads your hand gestures, and — in a previous life — took 35 seconds just to say "hello." So There's a Glowing Orb on My Desktop Now Let me introduce you to AURA , a desktop companion whose entire personality can be summarized as: "I will float on top of your windows, stare at your webcam, and silently form opinions about your code and your life choices." Per its own README, AURA is built to look at your screen, evaluate your facial expressions, and judge your open browser tabs in real time. No notes. No euphemisms. That's just the mission statement, printed in broad daylight, by the people who made it. Bold. Deranged. Kind of iconic. It's a semi-transparent holographic orb pretending very hard to be a sentient biological interface, the way a Roomba pretends to have feelings when it gets stuck under the couch. It changes color depending on whether you look focused, happy, or the specific flavor of "deeply stressed by my own code" that only a 2am debugging session can produce. It does not, notably, offer to help you fix the bug. It just watches. Like a nature documentary, except you're the nature. Chapter 1: The Dark Ages (a.k.a. "Please, Just Let Me Open One App") Before the great rewrite, launching AURA was less "spin up an AI assistant" and more "sit down, we need to talk about your life choices while the computer thinks." It behaved less like software and more like a extremely judgmental houseplant that needed 35 seconds of silent contemplation before it would even acknowledge your existence. Here's the greatest hits album of suffering, straight from the project's own changelog, presented with the reverence it deserves: The 35-Second Cold Start Penalty — On launch, the app synchronously imported PyTorch, EasyOCR, MediaPipe, PyAutoGUI, Pygame, and the Windows speech drivers, all before doing anything useful, like a chef who insists on individually greeting every vegetable before starting dinne

2026-08-03 原文 →