require(...), assert(...), if (...) revert) from Ethereum/Vyper sources.web3se/SmartBERT-v2 and is contrastively fine-tuned so that cosine similarity reflects semantic intent of guards used in transaction-reverting checks.1from sentence_transformers import SentenceTransformer
2
3model = SentenceTransformer("MojtabaEshghie/RavenBERT")
4sentences = [
5 "amountOut >= amountOutMin",
6 "deadline >= block.timestamp",
7 "balances[msg.sender] >= amount"
8]
9emb = model.encode(sentences, convert_to_numpy=True, show_progress_bar=False)
10# emb are L2-normalized; use cosine similarity for comparisonsweb3se/SmartBERT-v2CosineSimilarityLoss (positives near 1.0, negatives near 0.0)top_k=10, max 5 positives/item)0_Transformer/, 1_Pooling/, 2_Normalize/)sentence_transformers.models.Normalize()ravenbert_training_stats.json (included in repo)TBD