size_categories:n<1K language:en license:afl-3.0 smartcontract blockchain region:us
---
license: afl-3.0
language:
- en
tags:
- smartcontract
- blockchain
size_categories:
- n<1K
---
# Dataset Card for Dataset Name

## Dataset Description

This dataset is collected from top token in etherscan which are verifed and opensource. It contains useful information within the token, like token address, holders, sourcecode and so on. 
Besides, we pay much attention to analysis the source code of tokens’ contract, which refers to the tag column in this dataset. The value of tag contains LLM analysis of contract source code with the token, which is useful for solidity contract creation by LLMs. 
### Dataset Summary

This dataset contains of 877 rows in total. Each row includes the following features:

- token name(string) : the name of the top token we collect from etherscan
- max_total_supply(integer):  max total supply of this token
- holders(string): holders number of this token
- total_transfers(integer): token transfer transaction number of this token
- circulating_supply_market_cap(string):  the total market value of a cryptocurrency or token based on its circulating supply
- fully_diluted_market_cap(string)： the total market value of a cryptocurrency or token based on its maximum or fully diluted supply
- contract_address(string)： address of this token
- source_code(string): source code of the contracts
- abi(string):  abi,  application binary interface of the source code.
- tags(json):  the llm analysis of the source code display in json type. The structure of tags is :

```python
{
  "Pragma": <Pragma>,  
  "Contracs": [
    {
      "name": "<Contact_name>", 
      "role": "<Contract_role>" ,
      "functions": { "<func_name>": "<func_role>" },
      "modifier": { "<modifier_name>": "<modifier_role>" }
    }
  ],
  "Interface": [
    {
      "name": "<Interface_name>", 
      "role": "<Interface_role>" ,
      "functions": { "<func_name>": "<func_role>" },
      "modifier": { "<modifier_name>": "<modifier_role>" }
    }
  ],
  "Library": [
    {
      "name": "<Library_name>", 
      "role": "<Library_role>" ,
      "functions": { "<func_name>": "<func_role>" },
      "modifier": { "<modifier_name>": "<modifier_role>" }
    }
  ],
}
```

tags value contains the name and role of each contract/library/interface and the functions’ name and role within it. Tags can help poor llms clearly figure out what’s users need and feed back the correct answer.

### Supported Tasks and Leaderboards

[More Information Needed]

### Languages

- The dataset is in the English language (en).
- Smart contracts (source code ) are in Solidity programming language.

## Dataset Structure

### Data Instances

[More Information Needed]

### Data Fields

- token name(string) : the name of the top token we collect from etherscan
- max_total_supply(integer):  max total supply of this token
- holders(string): holders number of this token
- total_transfers(integer): token transfer transaction number of this token
- circulating_supply_market_cap(string):  the total market value of a cryptocurrency or token based on its circulating supply
- fully_diluted_market_cap(string)： the total market value of a cryptocurrency or token based on its maximum or fully diluted supply
- contract_address(string)： address of this token
- source_code(string): source code of the contracts
- abi(string):  abi,  application binary interface of the source code.
- tags(json):  the llm analysis of the source code display in json type. The structure of tags is :


## Dataset Creation
To collect token information  except tags we use beautifulsoup4 to crawl contracts from etherscan top token. 

As for tags we built a tool called  “Labeling Tool for Smart Contract Dataset Based on LLM”

This tool uses LLM model like GPT3.5 to figure out the structure of contracts and roles of every part. 

And we made an SmartContractTagging agent to complete this task. You can find our codes in this github link: xxxx

### Curation Rationale

[More Information Needed]

### Source Data

#### Initial Data Collection and Normalization

[More Information Needed]

