So how to decide best
has anyone thought/written about data-processing services via nostr?
I'm thinking of, as nostr:npub1dergggklka99wwrs92yz8wdjs952h2ux2ha2ed598ngwu9w7a6fsh9xzpc says, a vending machine model.
Money in, data out.
Example:
I publish an event saying I want "X data processed in Y form, will pay Z", services compete to serve me the data back.
Rationale:
I'm integrating audio/video highlights on nostr:npub1w0rthyjyp2f5gful0gm2500pwyxfrx93a85289xdz0sd6hyef33sh2cu4x (cc nostr:npub1kuy0wwf0tzzqvgfv8zpw0vaupkds3430jhapwrgfjyn7ecnhpe0qj9kdj8 nostr:npub18lzls4f6h46n43revlzvg6x06z8geww7uudhncfdttdtypduqnfsagugm3 ); instead of handling the transcription within Highlighter (which is what I'm doing now via the `whisper` model), what if users could query for that specific service and pay for it directly to the right service provider?
Ideally, the user would have no "account" or "balance" on any of the service providers (vending machines don't have balances!), and ideally only the "best" (as understood by the user) is rewarded.
The way I imagine it working is:
* user publishes X event with the job spec
* service providers that can handle that job spec compete to serve it (risk!)
* when service provider serves the data the user pays to the "best" service provider
Ideally there would be no negotiation steps between user<>provider, at least for inexpensive compute.
Obviously there's risk to the service provider here, but it's risk that would be very easy to price/handle for a motivated service provider.
The upside is a transparent, always-on global marketplace for data-processing/compute.
Discussion
up to the client to choose who to pay
and up to the service provider to choose which users not to serve ๐
service providers could monitor for other service providers responding to the request and abort a job if they see a request has been fulfilled by their competition
That make sense.
Iโm thinking how micro a task is. If it takes more than several hours, still probably some hours of service will be wasted
How about adding a claim process, claim the problem so others will not work on it, until it is rejected, if accepted then deal close
I'm thinking very small compute tasks where risk can be easily managed
certainly for long running processes there could be a component of negotiation / claiming
but that makes it so much more complex that I think it belongs in a different model entirely
How does the use decide which provider/data is the best without seeing it? And if he sees it before payment, what incentive is there to pay afterwards?
I think this is fine because all data are open. So if client reject reasonable solutions no body will be willing to provide service anymore
So once he's stuck, he's stuck forever?
Or maybe he just has to pay his last invoice ๐ค
yeah, this is all subjective and up to service providers to decide how/who to serve or what to require from a "banned" user to be serviceable again
(i.e. could be POW, could be paying, whatever, up to the market to decide)
Im just not sure what's the right way to decide if a user maliciously or rightfully devoted payment (maybe because he just got nonsense data). As a service provider, you probably must have a way to decide this algorithmically or else it would be too much effort.
Not really.
This happens organically.
If a company provides data to npub X and their invoices to that user are never paid the service provider stops serving that user.
It could be that their data sucks.
Or that the user is abusing.
Or that the user/service provider has a mismatch.
Itโs all information a service provider can use to do business.
user sees the data
user wants to continue using the service and service providers might up to not serve users who don't pay their bills
same model as your power company ๐
Yeah, but my power company always has the option to sue me. They know my name and address. All we do here is pseudonymous and without legal contact, so there's no way to sure me if I don't pay.
I really like your thought, I just try to play devils advocate here.
The power company is not going to sue you if you donโt pay a 100 sat invoice; they just price in risk.
Most companies measure and price risk like this.