Marktkapitalisierung: $3.3104T -0.610%
Volumen (24h): $180.7418B 40.450%
  • Marktkapitalisierung: $3.3104T -0.610%
  • Volumen (24h): $180.7418B 40.450%
  • Angst- und Gier-Index:
  • Marktkapitalisierung: $3.3104T -0.610%
Kryptos
Themen
Cryptospedia
Nachricht
Cryptostopics
Videos
Top -Nachrichten
Kryptos
Themen
Cryptospedia
Nachricht
Cryptostopics
Videos
bitcoin
bitcoin

$101937.247657 USD

-1.92%

ethereum
ethereum

$2440.088811 USD

-3.10%

tether
tether

$1.000193 USD

0.01%

xrp
xrp

$2.459614 USD

3.05%

bnb
bnb

$645.663399 USD

-1.18%

solana
solana

$169.340061 USD

-2.43%

usd-coin
usd-coin

$1.000185 USD

0.04%

dogecoin
dogecoin

$0.221860 USD

-5.74%

cardano
cardano

$0.788860 USD

-2.57%

tron
tron

$0.263711 USD

-1.20%

sui
sui

$3.873057 USD

-2.82%

chainlink
chainlink

$16.315579 USD

-4.09%

avalanche
avalanche

$23.848565 USD

-4.36%

stellar
stellar

$0.301245 USD

-3.23%

shiba-inu
shiba-inu

$0.000015 USD

-6.14%

Nachrichtenartikel zu Kryptowährungen

Wollten Sie schon immer einen automatisierten Workflow innehalten, um auf eine menschliche Entscheidung zu warten?

May 13, 2025 at 07:17 am

Möglicherweise benötigen Sie die Genehmigung, bevor Sie Cloud -Ressourcen bereitstellen, ein Modell für maschinelles Lernen für die Produktion fördern oder die Kreditkarte eines Kunden berechnen.

Have you ever wanted to pause an automated workflow to wait for a human decision? Maybe you need approval before provisioning cloud resources, promoting a machine learning model to production, or charging a customer’s credit card.

Wollten Sie schon immer einen automatisierten Workflow innehalten, um auf eine menschliche Entscheidung zu warten? Möglicherweise benötigen Sie die Genehmigung, bevor Sie Cloud -Ressourcen bereitstellen, ein Modell für maschinelles Lernen für die Produktion fördern oder die Kreditkarte eines Kunden berechnen.

In many data science and machine learning workflows, automation gets you 90% of the way — but that critical last step often needs human judgment. Especially in production environments, model retraining, anomaly overrides, or large data movements require careful human review to avoid expensive mistakes.

In vielen Workflows für Datenwissenschaft und maschinelles Lernen bringt Sie die Automatisierung 90% des Weges - aber dieser kritische letzte Schritt braucht oft ein menschliches Urteilsvermögen. Insbesondere in Produktionsumgebungen erfordern Modellumschulungen, Überstände von Anomalie oder große Datenbewegungen eine sorgfältige Überprüfung des Menschen, um teure Fehler zu vermeiden.

In my case, I needed to manually review situations where my system flagged more than 6% of customer data for anomalies — often due to accidental pushes by customers. Before I implemented a proper workflow, this was handled informally: developers would directly update production databases (!) — risky, error-prone, and unscalable.

In meinem Fall musste ich Situationen manuell überprüfen, in denen mein System mehr als 6% der Kundendaten für Anomalien markierte - häufig aufgrund zufälliger Drucke durch Kunden. Bevor ich einen ordnungsgemäßen Workflow implementierte, wurde dies informell behandelt: Entwickler würden die Produktionsdatenbanken (!)-riskant, fehleranfällig und unvergleichlich aktualisieren.

To solve this, I built a scalable manual approval system using AWS Step Functions, Slack, Lambda, and SNS — a cloud-native, low-cost architecture that cleanly paused workflows for human approvals without spinning up idle compute.

Um dies zu lösen, habe ich ein skalierbares manuelles Genehmigungssystem mit AWS-Schrittfunktionen, Slack, Lambda und SNS erstellt-eine wolkennative, kostengünstige Architektur, die die Workflows für menschliche Genehmigungen sauber pausierte, ohne den Leerlauf zu verbessern.

In this post, I’ll walk you through the full design, the AWS resources involved, and how you can apply it to your critical workflows.

In diesem Beitrag werde ich Sie durch das vollständige Design, die beteiligten AWS -Ressourcen und wie Sie es auf Ihre kritischen Workflows anwenden können.

Let’s get into it 👇

Lassen Sie uns darauf eingehen 👇

The Solution

Die Lösung

My application is deployed in the AWS ecosystem, so we’ll use Aws Step Functions to build a state machine that:

Meine Anwendung wird im AWS -Ökosystem bereitgestellt, daher verwenden wir AWS -Schrittfunktionen, um eine Statusmaschine zu erstellen, die:

Here is a youtube video showing the demo and actual application in action:

Hier ist ein YouTube -Video, das die Demo und die tatsächliche Anwendung in Aktion zeigt:

I have also hosted the live demo app here →👉 https://v0-manual-review-app-fwtjca.vercel.app

Ich habe auch die Live-Demo-App hier gehostet → 👉 https://v0-manual-review-app-app-fwtjca.vercel.app

All code is hosted here with the right set of IAM permissions.

Der gesamte Code wird hier mit dem richtigen Satz von IAM -Berechtigungen gehostet.

Step-by-Step Implementation

Schritt-für-Schritt-Implementierung

The flow above generates a dataset, uploads it to AWS S3 and if a review is required, then invokes the Manual Review lambda. On the manual review step, we’ll use a Task lambda with an invoke on WaitForTaskToken, which pauses execution until resumed. The lambda reads the token this way:

Der obige Fluss generiert einen Datensatz, lädt ihn in AWS S3 hoch und ruft dann die manuelle Überprüfung Lambda auf. Im Handel -Review -Schritt verwenden wir eine Aufgabe Lambda mit einem Aufruf auf WaitFortaskToken, der die Ausführung bis zur Wiederaufnahme annimmt. Die Lambda liest das Token auf diese Weise:

This Lambda sends a Slack message that includes the task token so the function knows what execution to resume.

Diese Lambda sendet eine Slack -Nachricht, die das Task -Token enthält, sodass die Funktion weiß, welche Ausführung wieder aufgenommen werden soll.

2. Before the we send out the slack notification, we need to

2. Bevor wir die Slack -Benachrichtigung aussenden, müssen wir uns

I followed the youtube video here for my setup.

Ich folgte dem YouTube -Video hier für mein Setup.

3. Once the above is setup, setup the variables into the web-hook step of the slack workflow:

3. Sobald das oben genannte Einrichtungen eingerichtet ist, stellen Sie die Variablen in den Web-Hook-Schritt des Slack-Workflows ein:

And use the variables with a helpful note in the following step:

Und verwenden Sie die Variablen im folgenden Schritt mit einer hilfreichen Notiz:

The final workflow will look like this:

Der endgültige Workflow sieht so aus:

4. Send a Slack Notification published to an SNS topic (you can alternately use slack-sdk as well) with job parameters. Here is what the message will look like:

4. Senden Sie eine Slack-Benachrichtigung an ein SNS-Thema (Sie können auch abwechselnd Slack-SDK verwenden) mit Jobparametern. So wird die Nachricht aussehen:

This Lambda sends a Slack message that includes the task token so the function knows what execution to resume.

Diese Lambda sendet eine Slack -Nachricht, die das Task -Token enthält, sodass die Funktion weiß, welche Ausführung wieder aufgenommen werden soll.

5. Once a review notification is received in slack, the user can approve or reject it. The step function goes into a wait state until it receives a user response; however the task part is set to expire in 24 hours, so inactivity will timeout the step function.

5. Sobald eine Überprüfungsbenachrichtigung in Slack eingegangen ist, kann der Benutzer sie genehmigen oder ablehnen. Die Schrittfunktion geht in einen Wartezustand, bis sie eine Benutzerantwort empfängt. Der Aufgabenteil ist jedoch so eingestellt, dass die Inaktivität die Schrittfunktion ausgeht.

Based on whether the user approves or rejects the review request, the rawPath gets set and can be parsed here: code

Basierend darauf, ob der Benutzer die Überprüfungsanforderung genehmigt oder ablehnt, wird der RawPath festgelegt und kann hier analysiert werden: Code

The receiving API Gateway + Lambda combo:

Die Empfangs -API -Gateway + Lambda -Kombination:

Example:

Beispiel:

Note: Lambda configured with WaitForTaskToken must wait. If you don’t send the token, your workflow just stalls.

HINWEIS: Lambda mit WaitFortaskToken muss warten. Wenn Sie das Token nicht senden, bleibt Ihr Workflow nur abgebildet.

Bonus: If you need email or SMS alerts, use SNS to notify a broader group.Just sns.publish() from within your Lambda or Step Function.

Bonus: Wenn Sie E -Mail- oder SMS -Benachrichtigungen benötigen, benachrichtigen Sie SNS, um eine breitere Gruppe zu informieren. Nur Sns.Publish () innerhalb Ihrer Lambda- oder Schrittfunktion.

Testing

Testen

Once the manual approval system was wired up, it was time to kick the tires. Here’s how I tested it:

Sobald das manuelle Genehmigungssystem verdrahtet war, war es Zeit, die Reifen zu treten. So habe ich es getestet:

I tested all major paths:

Ich habe alle wichtigen Wege getestet:

Behind the scenes, I also verified that :

Hinter den Kulissen habe ich auch das überprüft:

I highly recommend testing not just happy paths, but also “what if nobody clicks?” and “what if Slack glitches?” — catching these edge cases early saved me headaches later.

Ich empfehle dringend, Testen nicht nur für glückliche Pfade zu testen, sondern auch „Was ist, wenn niemand klickt?“ und "Was ist, wenn Slack -Störungen?" - Wenn ich diese Kantenfälle frühzeitig fangen, hat ich später Kopfschmerzen erspart.

Lessons Learned

Lektionen gelernt

Wrapping Up

Einpacken

Adding human-in-the-loop logic doesn’t have to mean duct tape and cron jobs. With Step Functions + Slack, you can build reviewable, traceable, and production-safe approval flows.

Das Hinzufügen von Logik in der Schleife muss kein Klebeband und Cron-Jobs bedeuten. Mit Schrittfunktionen + Slack können Sie überprüfbare, nachvollziehbare und produktionssichere Zulassungsströme erstellen.

If this helped, or you’re trying something similar, drop a note in the comments! Let’s build better workflows.

Wenn dies geholfen hat oder Sie etwas Ähnliches versuchen, geben Sie in den Kommentaren eine Notiz ab! Lassen Sie uns bessere Workflows aufbauen.

Note: All images in this article were created by the author

Hinweis: Alle Bilder in diesem Artikel wurden vom Autor erstellt

Haftungsausschluss:info@kdj.com

Die bereitgestellten Informationen stellen keine Handelsberatung dar. kdj.com übernimmt keine Verantwortung für Investitionen, die auf der Grundlage der in diesem Artikel bereitgestellten Informationen getätigt werden. Kryptowährungen sind sehr volatil und es wird dringend empfohlen, nach gründlicher Recherche mit Vorsicht zu investieren!

Wenn Sie glauben, dass der auf dieser Website verwendete Inhalt Ihr Urheberrecht verletzt, kontaktieren Sie uns bitte umgehend (info@kdj.com) und wir werden ihn umgehend löschen.

Weitere Artikel veröffentlicht am May 13, 2025