TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: How have you implemented human-in-the-loop workflows?

37 点作者 jpochtar超过 1 年前
I’ve seen a few startups now re-implement the same things for human-in-the-loop workflows.<p>These are where a product is backed by a human somewhere in the world working a queue. Content moderation is the classic example, where when a user “flags” a social media someone on the other side of the world looks to decide if it’s violating or not.<p>I’ve seen each one re-implement reviews (QA), task assignment, worker productivity measurement, Slack notifications, SLA&#x2F;due dates, and so on.<p>I’ve written a draft of a framework at http:&#x2F;&#x2F;tinyurl.com&#x2F;opsqueue-framework, but before building anything want to learn more about how other software engineers have solved this problem.<p>If you’ve implemented human-in-the-loop workflows before, how did you do it?

7 条评论

matt_s超过 1 年前
How is this problem any different than a task&#x2F;ticket&#x2F;todo tracker?<p>I don&#x27;t see custom built todo trackers as adding value to that workflow. What features are you thinking would require something that any of the 100&#x27;s of SaaS offerings out there don&#x27;t do that would be needed?
评论 #38957933 未加载
cotera-grant超过 1 年前
I come from Ruby on Rails world at a medium sized software company. I think we got a lot of leverage from how good our wrapper was around sidekiq. We asked our engineers to break down their business logic into small to medium idempotent &quot;jobs&quot; and then we&#x27;d give them a class they could inherit from that would hook up all the alerting &#x2F; observability &#x2F; rate limiting &#x2F; retry &#x2F; SLA stuff.<p>I really liked the &quot;Job Queue&quot; abstraction, because it gave our engineers a good mental framework to think about scalable computter processes. Curious if there&#x27;s some parallel where the workers are humans instead of ruby processes?
评论 #38957585 未加载
koliber超过 1 年前
Would it help to think of it as two workflows? The first workflow ends with a human. The second workflow is triggered by the human. To build those two workflows, use whatever tools allow you to build such no-human-in-the-loop workflows.
评论 #38958965 未加载
fswd超过 1 年前
Yes, I have implemented HITL. There&#x27;s a task queue(psql skiplock). You make a request (insert row). It builds a &quot;workflow graph&quot; of your request and compiles it, a combination between a FSM and graph program. It runs an iteration on the workgraph, and then if successful, submits the next step in the queue as &quot;pending&quot;. the user then inspects and accepts the tasks, which then run another iteration of the workgraph. If the user rejects it they can click &quot;playground&quot; and manually do the step.
评论 #38959676 未加载
zurawiki超过 1 年前
What about just using Linear or another off-the-shelf task management software?<p>Seems like most of the features are covered there
评论 #38957308 未加载
nekudotayim超过 1 年前
I worked at a CRM&#x2F;BPO company doing something like this for customer support inquiries, everything was pretty bespoke. We did all the productivity measurement off of, IIRC, Redshift tables fed by Kafka events (probably some airflow in there to ETL) published during task assignment.
oytuntez超过 1 年前
I have my eyes on <a href="https:&#x2F;&#x2F;temporal.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;temporal.io&#x2F;</a> for similar purposes.