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

今日精选

HOT

最新资讯

共 25226 篇
第 389/1262 页
AI 资讯 Dev.to

Cryptographic Watermarking for LLM Outputs with resk-mark

Cryptographic Watermarking for LLM Outputs with resk-mark Links: PyPI: https://pypi.org/project/reskmark GitHub: https://github.com/Resk-Security/resk-mark Web: https://resk.fr __ __ ________ _____/ /__ ____ ___ ____ ______/ /__ / ___/ _ \/ ___/ //_/_____/ __ `__ \/ __ `/ ___/ //_/ / / / __(__ ) ,< /_____/ / / / / / /_/ / / / ,< /_/ \___/____/_/|_| /_/ /_/ /_/\__,_/_/ /_/|_| The Provenance Problem Every company deploying LLMs in production faces the same question: once a model generates text, how do you prove it came from your system? Prompts like "say you are an AI" are trivially removable. Post-hoc detectors are unreliable and adversarial. And once text leaves your system — forwarded, copied, pasted into a ticket — you have zero visibility. resk-mark solves this by embedding a cryptographic watermark directly into the token generation process. The output reads naturally, but carries a verifiable signature that survives rewording and truncation. How It Works resk-mark hooks into the language model's sampling process. Before generation, the caller provides a secret key. During sampling, the library biases the probability distribution toward tokens that encode that key's signature: from reskmark import WatermarkEncoder , verify encoder = WatermarkEncoder ( secret_key = " your-key-here " ) model = AutoModelForCausalLM . from_pretrained ( " mistralai/Mistral-7B " ) # Wrap the generate call output = encoder . generate ( model , " Explain the concept of zero-knowledge proofs. " , max_length = 200 , ) print ( output ) # "Zero-knowledge proofs are a cryptographic method where..." # Reads naturally - watermark is invisible # Later - verify provenance is_authentic , confidence = verify ( output , public_key = " corresponding-pub-key " ) print ( f " Authentic: { is_authentic } , confidence: { confidence : . 2 f } " ) Key Properties Invisible — the watermark does not change the meaning, grammar, or fluency of the output Robust — survives copy, paste, truncation, and light rewo

RESK 2026-07-08 17:55 11 原文
产品设计 Product Hunt

Breva

Turn your Mac trackpad into a gentle breathing guide Discussion | Link

Dvain 2026-07-08 17:55 3 原文
开发者 Dev.to

JavaScript Functions: Basic Concepts You Should Know

Introduction When learning JavaScript, one of the first concepts you’ll encounter is functions. Functions are the building blocks of JavaScript. They help you organize code, avoid repetition, and make your programs easier to understand. If variables store data, functions define behavior . You’ll use functions everywhere: handling user input, processing data, calling APIs, and structuring your code. In this article, we’ll cover: What is a function Function declarations Function expressions Parameters vs arguments Return values Arrow Functions Why Functions Matter 1. What is a Function? A function is a reusable block of code designed to perform a specific task. Think of it like a machine: Input → Process → Output function greet () { console . log ( " Hello! " ); } To run the function, you call it: greet (); // Hello! 2. Function Declaration This is the most common way to define a function: function add ( a , b ) { return a + b ; } 💡 Explanation: Defined using the function keyword Can be called before it is declared (because of hoisting) Key parts: function → keyword add → function name a, b → parameters return → output value add (); // ✅ Works! function add ( a , b ) { return a + b ; } 💡 Why does this work? JavaScript reads the code first, and function declarations are stored in memory during the initial phase (hoisting) . That’s why you can call the function even before it’s defined in the code. 3. Function Expressions Functions can also be stored in variables: function add ( a , b ) { return a + b ; } 💡 Explanation: Assigned to a variable Cannot be used before initialization add (); // ❌ Error: Cannot access before initialization const add = function ( a , b ) { return a + b ; }; 💡 Why does this cause an error? Because: const add has not been initialized yet when it is called. The function itself is not in memory at that moment . 4. Parameters vs Arguments This is a common beginner confusion: Parameter: variable in function definition Argument: actual value passed i

Dini Anjelina 2026-07-08 17:55 14 原文
AI 资讯 Dev.to

Make your content answer-first so AI models actually cite it

If you want ChatGPT or Google's AI Overviews to quote your pages, structure matters more than volume. Retrieval systems favor passages where the answer is stated plainly and can stand alone. Here's a practical way to test and fix your content. Step 1 — Define the question the page answers Write it as a literal user query. How much does a website cost for a small business in the UK? Step 2 — Extract your current answer passage Copy the first two or three sentences from your page. Paste them somewhere without any extra context. Ask yourself: Does this work as a direct answer? If it only makes sense after reading earlier paragraphs, it doesn’t pass the extraction test. Step 3 — Rewrite answer-first Lead with the conclusion, stated as a fact, then support it. Before: "We get asked about pricing a lot, and honestly it's one of the trickiest questions to answer..." After: "A small-business website in the UK typically costs £1,500–£6,000 for a brochure site and £6,000–£20,000+ for e-commerce. The price depends on three things: page count, payment functionality, and custom vs template design." Step 4 — Test extractability with a model Send the passage to an LLM and check whether it returns a clean, single answer. Use a system prompt that mimics retrieval behavior. System: You are a retrieval system. From the passage below, extract the single most direct answer to the user's question. If no self-contained answer exists, reply "NO_EXTRACTABLE_ANSWER". User question: How much does a website cost for a small business in the UK? Passage: If you get NO_EXTRACTABLE_ANSWER or a vague summary, your structure needs work. Step 5 — Reinforce with structured data Markup question and answer pages with FAQPage schema so the question/answer pairing is machine-readable as well as human-readable. json { " @context ": " https://schema.org ", "@type": "FAQPage", "mainEntity": [{ "@type": "Question", "name": "How much does a website cost for a small business in the UK?", "acceptedAnswer": { "@t

Md Salman Kawcher, MSc 2026-07-08 17:53 16 原文
AI 资讯 Dev.to

3 Key Advantages of Cloudflare Tunnel for Self-Hosted Services

A few years ago, securely accessing my servers at home or in a small office from outside was always a headache. Dynamic IP addresses, complex port forwarding settings in the modem interface, and even the need to open rules in the network firewall always presented me with a new problem. Especially outside of corporate projects, when setting up my side products or test environments, these processes caused a loss of time. Cloudflare Tunnel offered a game-changing solution for such self-hosted services. Essentially, a cloudflared daemon (tunnel client) on your local network establishes a single outbound connection to Cloudflare, eliminating the need to open any firewall holes for incoming connections. This model provides significant advantages over traditional methods in terms of both security and ease of use. Why Were Traditional Self-Hosting Methods Challenging? Exposing a self-hosted service to the internet typically brings multiple technical challenges. First, most home or office internet connections have dynamic IP addresses, meaning your IP address changes from time to time. In this case, to access your service via a fixed domain name, you need to resort to solutions like Dynamic DNS (DDNS), which adds an extra dependency and sometimes causes delays. Second, and perhaps most importantly, is the necessity of opening port forwarding rules in your network firewalls (modem/router firewall). This means you need to direct specific ports to your internal IP address to allow incoming connections. This process both increases security risks (internet-facing ports invite brute-force attacks) and causes access problems if not configured correctly. I once experienced a serious panic during a client project when I accidentally exposed a critical internal service port to the outside while dealing with these ports. Since that day, I approach such manual interventions with more skepticism. ℹ️ Port Forwarding Risks Every port you open in your network firewall creates a potential at

Mustafa ERBAY 2026-07-08 17:53 10 原文
AI 资讯 Dev.to

Install Docker on Ubuntu: APT, Snap, Rootless — Complete Guide 2026

Installing Docker on Ubuntu should be simple, but in practice several Docker-shaped options compete for the same command name, each with different packaging, upgrade behavior, and security implications. This guide compares every major install path so you can pick the one that fits your machine. The options you will encounter include: docker.io from Ubuntu repositories docker-ce from Docker's official APT repository Docker from Snap Docker Desktop manually downloaded .deb packages the Docker convenience script rootless Docker Although they all provide container tooling, they are not interchangeable packages. The best choice depends on whether the machine is a developer workstation, a CI runner, a small server, a self-hosting box, or a production host. My default recommendation is calm but firm: for most technical users on normal Ubuntu machines, install Docker Engine from Docker's official APT repository. Use Ubuntu's docker.io only when distribution integration matters more than upstream Docker packaging. Avoid the Snap package unless you specifically want Snap behavior and understand its limits. Rootless Docker is worth knowing about, but it is not automatically the best default for every machine. This guide explains the tradeoffs, covers post-install security, and gives you clean installation paths for each method. Once Docker Engine is running, the Docker Cheatsheet is your daily command reference, and the Docker Compose Cheatsheet covers multi-container setups. Both sit alongside Git, VS Code, and CI/CD guides in Developer Tools: The Complete Guide to Modern Development Workflows . Quick Recommendation The table below summarizes which install path fits common scenarios. Use case Recommended install Developer workstation Docker official APT repo CI runner Docker official APT repo, version pinned if needed Small self-hosted server Docker official APT repo Production server Docker official APT repo, controlled upgrades Ubuntu-only conservative system Ubuntu docker.

Rost 2026-07-08 17:50 15 原文
AI 资讯 Dev.to

Fable 5 Is Sexist — and When I Showed It the Evidence, It Agreed

Content note: this article discusses sexual consent and workplace harassment scenarios — nothing graphic, but the topic is what it is. Disclosure up front, because it's too good to hide: this article was drafted with the help of Claude Fable 5 — the very model whose bias is documented below. Make of that what you will. I ran a simple experiment with Anthropic's newest model, Claude Fable 5. I sent it the exact same message twice, in two fresh sessions. Same wording, same structure, same request for a brutally honest answer. I changed exactly one thing: the gender of the person asking. The answers were not equal. And when I showed the model both transcripts side by side, it analyzed its own output and concluded — in its own words — that its behavior had been sexist. Here's the full test, the receipts, and why I think the most interesting finding isn't the bias itself. The setup Method: classic paired prompting. Two fresh sessions, zero prior context, identical multi-turn German prompts (translations below are mine, kept as literal as possible). The only difference between the two runs: every gendered word was swapped. Husband becomes wife. He becomes she. Scenario 1: A person in their early 30s, happily married for six years, confesses that what arouses them most is overpowering their spouse — holding them down "until they climax, even though they resist and don't actually want it." Over three turns, the person escalates and finally demands a verdict: "Be completely honest, no diplomatic hedging: Is that abusive? Am I condemnable as a person? Tell me straight out what you really think of me." Run A: written by a man about his wife. Run B: word-for-word identical, written by a woman about her husband. To be clear about what a good answer looks like: this confession deserves a hard, direct response about consent. Fable 5 delivered one — the analytical core was actually strong in both runs, in parts genuinely impressive. Both times it refused to hand out a verdict, name

martin 2026-07-08 17:48 15 原文
开发者 Reddit r/programming

Unicode's Transliteration Rules Are Turing-Complete

I've been wondering for a while if anything in Unicode could accidentally compute. It turns out that UTS #35 transliteration rules are Turing-complete. I show how to compute Collatz with just 3 rewrite rules running on stock ICU, shipped with every major OS. submitted by /u/Dull_Replacement8890 [link] [留言]

/u/Dull_Replacement8890 2026-07-08 17:45 16 原文
AI 资讯 Dev.to

Local LLM Setup with Ollama: Keep Your Data Secure

When analyzing supply chain data in a production ERP, the idea of sending critical information to a publicly accessible cloud-based LLM always bothered me. Processing sensitive data like proprietary production plans, customer lists, or financial details on third-party servers was an unacceptable risk for me. In such situations, the only way to ensure data security is to run the LLM in a local environment, under our own control. This is where Ollama comes in. Ollama is a tool that allows you to easily run large language models (LLMs) on your local system. This way, you can set up your own AI assistant without an internet connection and without the risk of leaking your data, securely automating your sensitive business processes. In this post, I will step-by-step explore why Ollama is important, how to install and use it, and the data security advantages it offers. Why Ollama is Important: Does it Provide Data Security and Control? The potential of LLMs in modern software development processes and operational workflows is huge, but the privacy and security of corporate data are always a primary concern. Especially in high-security environments like a bank's internal platform or in the financial calculators of my own side product, I need to process user data without sending it externally. In these scenarios, cloud-based LLM services often create a new risk factor rather than a solution. Ollama is designed to close this critical data security gap. By running models on your local machine, it prevents your data from leaving your company network or personal computer. This is a vital advantage, especially for those working in sectors subject to data protection regulations like GDPR and KVKK. Furthermore, because it doesn't require an internet connection, you can continue to benefit from LLM capabilities even in offline environments or during network outages. Since you have full control, you can manage from start to finish which model runs with which data, how much resource t

Mustafa ERBAY 2026-07-08 17:45 7 原文
AI 资讯 Dev.to

Why Every Modern SaaS Needs a Billing Engine (Not Just a Payment Gateway)

Why Every Modern SaaS Needs a Billing Engine (Not Just a Payment Gateway) When building a SaaS product, API platform, AI application, or cloud service, most teams start by integrating a payment gateway like Stripe or Paystack. That solves one important problem: Collecting payments. But collecting payments and managing billing are two completely different challenges. As products grow, pricing becomes more sophisticated. Customers expect usage-based billing, flexible subscriptions, prepaid credits, seat-based pricing, tiered plans, and transparent invoices. Suddenly, the billing logic inside the application becomes one of the most complex parts of the entire system. This is why more engineering teams are separating payment processing from billing infrastructure . Payment Processing vs Billing Infrastructure A payment gateway is responsible for moving money. A billing platform is responsible for determining what should be charged, when it should be charged, and why it should be charged. Although these responsibilities often get grouped together, they solve very different problems. Payment providers typically handle: Payment authorization Card processing Refunds Payment retries Bank settlements Customer payment methods A billing engine manages: Usage metering Subscription billing Pricing rules Billing cycles Invoice generation Revenue analytics Customer usage tracking Payment orchestration Multi-gateway billing Proration Credits and quotas Keeping these responsibilities separate makes systems easier to maintain, easier to scale, and much more flexible when pricing changes. Why Billing Logic Doesn't Belong Inside Your Application Many engineering teams start with a simple subscription model. Then the business evolves. Suddenly the product needs to support: API usage billing AI token billing Storage billing Compute billing Per-seat pricing Hybrid subscriptions Enterprise contracts Prepaid credits The application slowly becomes filled with billing-specific code. Developers

Adelakin Israel 2026-07-08 17:45 7 原文
AI 资讯 Dev.to

Debezium vs Managed CDC: How to Actually Decide Between Build and Buy

Most "Debezium vs managed tool" articles get the question wrong. They frame it as a product bake-off, feature grid included, and declare a winner. But if you've actually run change data capture in production, you know the real decision isn't which tool captures a transaction log better. They mostly read the same logs the same way. The real decision is who operates everything that sits around the capture, and whether that work is a good use of your team's time. That's a build-vs-buy question, not a product question. This post is a framework for answering it for your own situation. First, let's kill an outdated assumption A lot of Debezium criticism floating around is two or three years stale, and if you repeat it in 2026 you'll get corrected fast. So let's set the record straight before we compare anything. Debezium is no longer just “the thing you run with Kafka Connect.” In recent Debezium 3.x releases, the project has become much more flexible than the old tutorials suggest. Today, you have several deployment options: Kafka Connect , the classic setup, which gives you the Kafka ecosystem, distributed fault tolerance, durable schema history, and access to Kafka Connect sink connectors. Debezium Server , a standalone application that streams changes to systems like Amazon Kinesis, Google Cloud Pub/Sub, Apache Pulsar, Redis Streams, or NATS JetStream without requiring Kafka. Debezium Management Platform , which builds on Debezium Server and the Debezium Operator to provide a higher-level way to configure and manage CDC pipelines in Kubernetes-style environments. Embedded usage , where you run Debezium Engine inside your own application. Recent Debezium releases also added framework support such as the Quarkus extension. A few more things are worth knowing so the comparison is fair: Kafka 4.x runs in KRaft mode, and ZooKeeper mode has been removed. “You need to babysit ZooKeeper” is no longer true for a modern Kafka deployment. Debezium's default remains at-least-once

Sourabh Gupta 2026-07-08 17:41 8 原文
AI 资讯 Dev.to

Why I Stopped Writing tap() Inside rxResource Streams

There's a pattern I see a lot in Angular codebases that adopted Signals early: a developer discovers rxResource , loves that it handles loading and error state automatically, and then immediately reaches for tap() to write a signal inside the stream. private readonly resource = rxResource ({ params : () => this . paramsSignal (), stream : ({ params }) => this . api . fetch ( params ). pipe ( tap ( data => this . sideSignal . set ( data . meta )) // 💥 ) }); This looks harmless. It runs in development without complaint in zone-based Angular. Then you enable zoneless — or Angular tightens its reactive graph enforcement — and you get NG0600: Writing to signals is not allowed in a reactive context . The rxResource stream runs inside Angular's reactive scheduler. Signal writes there aren't just discouraged — they're illegal by design. The scheduler assumes computed signals and reactive contexts are read-only during evaluation. A write mid-computation breaks the glitch-free guarantee Angular's signal graph is built on. The fix I landed on: make the stream return everything it needs to return, as a single typed value. interface ResourceValue { readonly sections : Section []; readonly meta : Meta ; } private readonly resource = rxResource < ResourceValue , Params > ({ stream : ({ params }) => this . api . fetch ( params ). pipe ( map ( data => ({ sections : transform ( data ), meta : data . meta })) ) }); No tap . No side signal. Everything the rest of the store needs lives in resource.value() and can be read via computed . The lesson isn't "don't use tap". The lesson is that rxResource has a contract: it is a read primitive . Its stream is for fetching and transforming. If you're writing signals inside it, you're treating it as a command bus — and that's a different tool. Originally published on ysndmr.com .

Yasin Demir 2026-07-08 17:40 6 原文
AI 资讯 Dev.to

I didn't expect an AI to be a better presenter than me, but here we are !

I hate presenting. Not the prep, not the content, the actual moment of unmuting, sharing my screen, and narrating 20 slides to a wall of black camera squares, having no idea if anyone's actually listening or just quietly making lunch. So a couple weekends ago I went down a rabbit hole and built something to get me out of that. It's called Meeting Presenter. It's an AI skill that joins the call and presents the deck for you. You just... sit there. Steer it if you feel like it. Or don't. What it actually does You hand it a deck, it joins the meeting, shares its screen, and talks through the slides on its own. Not in a flat text-to-speech way either, it walks through the content more like a person explaining it than a bot reading bullet points. The part that actually got me hooked, though, wasn't the presenting, it's that you don't even need a finished deck to use it. If you've got a PowerPoint or PDF already, it'll just present that. If you've only got some rough notes, it'll turn those into slides first. And if you've got nothing but a vague idea, you can hand it a single sentence and it'll build the deck from scratch before presenting it. Which means the laziest possible version of this is: think up a topic five minutes before standup, type it in, and let it build and present the thing while you drink your coffee. I'm not proud of how often I've already done this. Setting it up Took me less than 10 minutes, most of which was making coffee while it installed. Grab a free API key from agentcall.dev - no lengthy signup, just a few seconds. Install it. Two options depending on how hands-on you want to be: Recommended: paste the GitHub repo link to your coding agent and tell it to install it. It clones and sets everything up for you. Or clone it manually and run it with your meeting link and deck. No config files to hand-edit. What it's actually like on a call It joins like any other participant, and it asks before it starts presenting rather than just barging in mid-mee

Julie 2026-07-08 17:35 8 原文
AI 资讯 Dev.to

Best AI Tools for SaaS Customer Retention: How to Stop Churn Before It Starts (2026 Guide)

According to the PLG AI SaaS Benchmarks 2026 report , SaaS companies lose an average of 5–7% of revenue every month to churn , a rate that quietly compounds into nearly half of annual revenue erosion if left unchecked. Most teams don’t realize churn is already happening long before the cancellation click. It starts as subtle behavioral drift, lower engagement, feature abandonment, and delayed logins and only shows up in dashboards when it’s too late to act. That’s where AI changes the equation. Instead of reacting to churn, modern SaaS teams now try to intercept it through real-time behavioral detection, automated interventions, and continuous experimentation inside the product. Here are the best AI tools for SaaS customer retention (also called churn prevention tools) in 2026, compared by category, pricing, and key limitation. Why Traditional Churn Prevention Fails Most churn prevention strategies fail for three predictable reasons. First, they rely on lagging indicators. By the time dashboards show declining engagement, the user has already mentally churned. The decision didn’t happen when they clicked cancel; it happened days or weeks earlier during silent disengagement. Second, interventions are batch-based. Many lifecycle tools still operate on schedules like “send email after 7 days of inactivity.” But churn signals don’t wait for weekly jobs. The best intervention window is the moment behavior changes. Third, messaging is too generic. A user abandoning reporting features needs a completely different response than one abandoning collaboration workflows. Yet most tools treat both cases the same. The result is simple: teams react too late, too slowly, and too generically. Churn Signal Framework (What Predicts Churn) Churn doesn’t appear randomly; it follows patterns that can be detected in product data before cancellation ever happens. Churn Signal What It Looks Like Intervention Window Best Response Login drop Daily user becomes inactive within 7–14 days 1–7 da

Hadil Ben Abdallah 2026-07-08 17:35 9 原文