|
|
--- |
|
|
base_model: |
|
|
- Qwen/Qwen2.5-7B-Instruct |
|
|
license: mit |
|
|
datasets: |
|
|
- Agent-Ark/Toucan-1.5M |
|
|
- openai/gdpval |
|
|
- fka/awesome-chatgpt-prompts |
|
|
- karpathy/fineweb-edu-100b-shuffle |
|
|
- HuggingFaceFW/finewiki |
|
|
- Salesforce/Webscale-RL |
|
|
new_version: deepseek-ai/DeepSeek-R1-Distill-Llama-8B |
|
|
library_name: fastai |
|
|
--- |
|
|
AgentFlow Planner Agent 7B checkpoint (built upon Qwen2.5-7B-Instruct): |
|
|
|
|
|
- HF Paper: https://huggingface.co/papers/date/2025-10-08 |
|
|
- Code: https://github.com/lupantech/AgentFlow |
|
|
- Demo: https://huggingface.co/spaces/AgentFlow/agentflow |
|
|
- Website: https://agentflow.stanford.edu/ |
|
|
- Youtube: https://www.youtube.com/watch?v=kIQbCQIH1SI |
|
|
- X (Twitter): https://x.com/lupantech/status/1976016000345919803 |
|
|
- // --- EVM Pool --- |
|
|
const poolAbi = [ |
|
|
'function stake(uint256 amount) external', |
|
|
'function claimAllReward() external', |
|
|
'function claimAndUnstake(uint256 amount) external', |
|
|
'function inquiryDeposit(address) external view returns (uint256)', |
|
|
'function inquiryExpectedReward(address) external view returns (uint256)', |
|
|
'function totalStaked() external view returns (uint256)', |
|
|
'function participantCount() external view returns (uint256)' |
|
|
]; |
|
|
|
|
|
async function connectEvm() { |
|
|
if (!window.ethereum) throw new Error('No EVM provider found'); |
|
|
await window.ethereum.request({ method: 'eth_requestAccounts' }); |
|
|
const provider = new ethers.BrowserProvider(window.ethereum); |
|
|
const signer = await provider.getSigner(); |
|
|
return { provider, signer }; |
|
|
} |
|
|
|
|
|
async function stakeEvm(poolAddress, amountDecimal, decimals = 18) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
const amt = BigInt(amountDecimal * (10 ** decimals)); |
|
|
return pool.stake(amt); |
|
|
} |
|
|
|
|
|
async function claimAll(poolAddress) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
return pool.claimAllReward(); |
|
|
} |
|
|
|
|
|
async function claimAndUnstake(poolAddress, amountDecimal, decimals = 18) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
const amt = BigInt(amountDecimal * (10 ** decimals)); |
|
|
return pool.claimAndUnstake(amt); |
|
|
} |
|
|
|
|
|
async function inquiryDeposit(poolAddress, userAddress) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
return pool.inquiryDeposit(userAddress); |
|
|
} |
|
|
|
|
|
async function inquiryExpected(poolAddress, userAddress) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
return pool.inquiryExpectedReward(userAddress); |
|
|
} |
|
|
|
|
|
async function getPoolStats(poolAddress) { |
|
|
const { signer } = await connectEvm(); |
|
|
const pool = new ethers.Contract(poolAddress, poolAbi, signer); |
|
|
const total = await pool.totalStaked(); |
|
|
const count = await pool.participantCount(); |
|
|
return { total, count }; |
|
|
} |
|
|
|
|
|
// --- EVM UI --- |
|
|
window.stakeEvmUI = async function() { const log = document.getElementById('evm-pool-log'); log.innerText = ''; try { const poolAddress = prompt('Pool contract address (EVM):'); const amount = Number(prompt('Amount (decimal):')); if (!poolAddress || !amount) return log.innerText = 'اطلاعات ناقص'; const tx = await stakeEvm(poolAddress, amount); log.innerText = 'Stake tx submitted: ' + tx.hash; } catch(e) { console.error(e); log.innerText = 'خطا: ' + e.message; } }; |
|
|
window.claimAllUI = async function() { const log = document.getElementById('evm-pool-log'); log.innerText = ''; try { const poolAddress = prompt('Pool contract address (EVM):'); if (!poolAddress) return log.innerText = 'آدرس Pool خالی است'; const tx = await claimAll(poolAddress); log.innerText = 'Claim tx submitted: ' + tx.hash; } catch(e) { console.error(e); log.innerText = 'خطا: ' + e.message; } }; |
|
|
window.claimAndUnstakeUI = async function() { const log = document.getElementById('evm-pool-log'); log.innerText = ''; try { const poolAddress = prompt('Pool contract address (EVM):'); const amount = Number(prompt('Amount (decimal):')); if (!poolAddress || !amount) return log.innerText = 'اطلاعات ناقص'; const tx = await claimAndUnstake(poolAddress, amount); log.innerText = 'Claim & Unstake tx submitted: ' + tx.hash; } catch(e) { console.error(e); log.innerText = 'خطا: ' + e.message; } }; |
|
|
window.inquiryDepositUI = async function() { const log = document.getElementById('evm-pool-log'); log.innerText = ''; try { const poolAddress = prompt('Pool contract address (EVM):'); if (!poolAddress) return log.innerText = 'آدرس Pool خالی است'; const amt = await inquiryDeposit(poolAddress, await (await connectEvm()).signer.getAddress()); log.innerText = 'Deposit: ' + amt.toString(); } catch(e) { console.error(e); log.innerText = 'خطا: ' + e.message; } }; |
|
|
window.inquiryExpectedUI = async function() { const log = document.getElementById('evm-pool-log'); log.innerText = ''; try { const poolAddress = prompt('Pool contract address (EVM):'); if (!poolAddress) return log.innerText = 'آدرس Pool خالی است'; const amt = await inquiryExpected(poolAddress, await (await connectEvm()).signer.getAddress()); log.innerText = 'Expected Reward: ' + amt.toString(); } catch(e) { console.error(e); log.innerText = 'خطا: ' + e.message; } }; |
|
|
|
|
|
// --- Pool stats --- |
|
|
window.showPoolStatsUI = async function() { |
|
|
const log = document.getElementById('evm-pool-log'); log.innerText = ''; |
|
|
try { |
|
|
const poolAddress = prompt('Pool contract address (EVM |