SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval

2
by
buelfhood
Embedding Model
OTHER
1908.10084B params
New
2 downloads
Early-stage
Edge AI:
Mobile
Laptop
Server
4265GB+ RAM
Mobile
Laptop
Server
Quick Summary

SentenceTransformer based on microsoft/unixcoder-base-unimodal This is a sentence-transformers model finetuned from microsoft/unixcoder-base-unimodal on the socotrainjava dataset.

Device Compatibility

Mobile
4-6GB RAM
Laptop
16GB RAM
Server
GPU
Minimum Recommended
1778GB+ RAM

Code Examples

Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-ep2-bs32-noEval")
# Run inference
sentences = [
    '\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport javax.swing.*;\n\npublic class PasswordCombination\n{\n    private int      pwdCounter = 0;\n    private    int  startTime;\n    private String   str1,str2,str3;\n    private String   url = "http://sec-crack.cs.rmit.edu./SEC/2/";\n    private String   loginPwd;\n    private String[] password;\n    private HoldSharedData data;\n    private char[] chars = {\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\n                            \'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\n                            \'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\n                            \'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\'};\n\n    public PasswordCombination()\n    {\n        System.out.println("Programmed by   for INTE1070 Assignment 2");\n\n        String input = JOptionPane.showInputDialog( "Enter number of threads" );\n        if(  input == null  )\n           System.exit(0);\n\n        int numOfConnections = Integer.parseInt( input );\n        startTime = System.currentTimeMillis();\n        int pwdCounter  = 52*52*52 + 52*52 + 52;\n        password = new String[pwdCounter];\n\n        doPwdCombination();\n\n        System.out.println("Total Number of Passwords Generated: " + pwdCounter);\n        createConnectionThread( numOfConnections );\n    }\n\n    private void doPwdCombination()\n    {\n        for( int i = 0; i < 52; i ++ )\n        {\n            str1 = "" + chars[i];\n            password[pwdCounter++] = "" + chars[i];\n            System.err.print( str1 + " | " );\n\n            for( int j = 0; j < 52; j ++ )\n            {\n                str2 = str1 + chars[j];\n                password[pwdCounter++] = str1 + chars[j];\n\n                for( int k = 0; k < 52; k ++ )\n                {\n                    str3 = str2 + chars[k];\n                    password[pwdCounter++] = str2 + chars[k];\n                }\n            }\n        }\n\n        System.err.println( "\\n" );\n    }\n\n    private void loadPasswords( )\n    {\n        FileReader     fRead;\n        BufferedReader buf;\n        String         line = null;\n        String         fileName = "words";\n\n        try\n        {\n            fRead = new FileReader( fileName );\n            buf = new BufferedReader(fRead);\n\n            while((line = buf.readLine( )) != null)\n            {\n                password[pwdCounter++] = line;\n            }\n        }\n        catch(FileNotFoundException e)\n        {\n            System.err.println("File not found: " + fileName);\n        }\n        catch(IOException ioe)\n        {\n            System.err.println("IO Error " + ioe);\n        }\n    }\n\n    private void createConnectionThread( int input )\n    {\n        data = new HoldSharedData( startTime, password, pwdCounter );\n\n        int numOfThreads = input;\n        int batch = pwdCounter/numOfThreads + 1;\n        numOfThreads = pwdCounter/batch + 1;\n        System.out.println("Number of Connection Threads Used:" + numOfThreads);\n        ConnectionThread[] connThread = new ConnectionThread[numOfThreads];\n\n        for( int index = 0; index < numOfThreads; index ++ )\n        {\n            connThread[index] = new ConnectionThread( url, index, batch, data );\n            connThread[index].conn();\n        }\n    }\n}  ',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
    '\nimport java.util.*;\n\n\npublic class Cracker\n{\n   private char[] letters = {\'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\', \'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\', \'A\', \'B\', \'C\', \'D\', \'E\', \'F\', \'G\', \'H\', \'I\', \'J\', \'K\', \'L\', \'M\', \'N\', \'O\', \'P\', \'Q\', \'R\', \'S\', \'T\', \'U\', \'V\', \'W\', \'X\', \'Y\', \'Z\'};\n   private Vector v;\n\n   public Cracker()\n   {\n      v = new Vector( 52);\n   }\n   public void loadLetters()\n   {\n      int i;\n\n      for( i = 0; i < letters.length; i++)\n      {\n\t String s = new StringBuffer().append( letters[i]).toString();\n         v.add( s);\n      }\n   }\n   public Vector getVictor()\n   {\n      return ;\n   }\n   public void loadPairs()\n   {\n      int i,j;\n\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n         {\n            String s1 = new StringBuffer().append( letters[i]).append( letters[j]).toString();\n\t    String s2 = new StringBuffer().append( letters[j]).append( letters[i]).toString();\n\t    v.add( s1);\n\t    v.add( s2);\n\t }\n      }\n      for( i = 0; i < letters.length; i++)\n      {\n         String s3 = new StringBuffer().append( letters[i]).append( letters[i]).toString();\n\t v.add( s3);\n      }\n   }\n   public void loadTriples()\n   {\n      int i, j, k;\n      \n      for( i = 0; i < letters.length; i++)\n      {\n         String s4 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[i]).toString();\n\t v.add( s4);\n      }\n      for( i = 0; i < letters.length - 1; i++)\n      {\n         for( j = i + 1; j < letters.length; j++)\n\t {\n\t    String s5 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[j]).toString();\n\t    String s6 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[j]).toString();\n\t    String s7 = new StringBuffer().append( letters[j]).append( letters[j]).append( letters[i]).toString();\n\t    String s8 = new StringBuffer().append( letters[j]).append( letters[i]).append( letters[i]).toString();\n\t    String s9 = new StringBuffer().append( letters[i]).append( letters[j]).append( letters[i]).toString();\n\t    String s10 = new StringBuffer().append( letters[i]).append( letters[i]).append( letters[j]).toString();\n\t    v.add( s5);\n\t    v.add( s6);\n\t    v.add( s7);\n\t    v.add( s8);\n\t    v.add( s9);\n\t    v.add( s10);\n\t }\n      }\n      for( i = 0; i < letters.length - 2; i++)\n      {\n         for( j = i + 1; j < letters.length - 1; j++)\n\t {\n\t    for( k = i + 2; k < letters.length; k++)\n\t    {\n\t       String s11 = new StringBuffer().append( letters[i]).append( letters[j]).append(letters[k]).toString();\n\t       String s12 = new StringBuffer().append( letters[i]).append( letters[k]).append(letters[j]).toString();\n\t       String s13 = new StringBuffer().append( letters[k]).append( letters[j]).append(letters[i]).toString();\n\t       String s14 = new StringBuffer().append( letters[k]).append( letters[i]).append(letters[j]).toString();\n\t       String s15 = new StringBuffer().append( letters[j]).append( letters[i]).append(letters[k]).toString();\n\t       String s16 = new StringBuffer().append( letters[j]).append( letters[k]).append(letters[i]).toString();\n\t       v.add( s11);\n\t       v.add( s12);\n\t       v.add( s13);\n\t       v.add( s14);\n\t       v.add( s15);\n\t       v.add( s16);\n\t    }\n\t }\n      }\n   }\n         \n   public static void main( String[] args)\n   {\n      Cracker cr = new Cracker();\n      cr.loadLetters();\n      cr.loadPairs();\n      cr.loadTriples();\n      System.out.println(" far "+cr.getVictor().size()+" elements loaded");\n   }\n}\n      \n',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]

Deploy This Model

Production-ready deployment in minutes

Together.ai

Instant API access to this model

Fastest API

Production-ready inference API. Start free, scale to millions.

Try Free API

Replicate

One-click model deployment

Easiest Setup

Run models in the cloud with simple API. No DevOps required.

Deploy Now

Disclosure: We may earn a commission from these partners. This helps keep LLMYourWay free.