FIP: Labels #216
Replies: 5 comments 11 replies
-
neat. excited to see this go forward! |
Beta Was this translation helpful? Give feedback.
-
Thank you 😊 good luck |
Beta Was this translation helpful? Give feedback.
-
As I wrote on Farcaster here, I suggest future-proofing the {
/** Creator of the label */
provider: {
type: 'fid',
/** Fid of user who created the label (e.g. 912381)*/
fid: number
} | /* Other types can go here... */;
/** Target that this label applies to */
target: {
type: 'cast',
hash: Uint8Array
} | {
type: 'account',
fid: number
}
// ...
} |
Beta Was this translation helpful? Give feedback.
-
@varunsrin The 9152 value apparently refers to the warpcast user by fid.
Thanks! |
Beta Was this translation helpful? Give feedback.
-
Can we expect username to be provided along with fid? :) |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Title: Labels
Type: Standards FIP
Authors: @akshaan, @v
Abstract
Labels are a standard to share metadata about Farcaster users and casts between apps.
Problem
Apps need to determine context about casts and users to improve their user experience. Services can provide such context either as a public good or as a paid service. For example, neynar provides an account score that helps apps filter out irrelevant accounts. Many other types of useful context also exist, like the language of a cast and whether an account is human or automated.
If we make it easy to discover service providers and provide a standard format to label data, we might see more context being produced which is beneficial for application developers.
Specification
A Label is a JSON object which can can be used to add context to a user or a cast. Labels can be served as flat files or over a stream.
File Format
If labels are provided as files, they should be in JSONL format as shown below.
Labels should be sorted in reverse order of timestamp so that consumers can easily read only those records that changed since their last read.
Directory
A github repo at farcaster/labels provides a directory of different label providers that serve labels over an API or a file format.
Rationale
What about a compact, high performance format like Parquet?
Data sets are fairly small and will see little benefit from high performance formats. A single label over the entire set of users would be roughly 0.2 GB. The JSON format is simpler and easier to work with and has fewer dependencies. If the network grows 10x in size we may propose a new format.
Why not have a way to stream labels efficiently from sources?
Our priority is to test the idea of labels and see if developers will start using them. If we see significant adoption and growth we may consider higher performance standards to allow streaming of labels from providers.
Release
Labels are a standards FIP and may be adopted by anyone at any time. Once this FIP is finalized, the farcaster/labels repository will be created as a directory of label providers. Warpcast plans to publish some labels about user relevance and bot categorizations.
Beta Was this translation helpful? Give feedback.
All reactions