yqzhangjx commited on
Commit
77c965a
1 Parent(s): 92bd1b9

Upload fine-tune-QA.ipynb

Browse files
Files changed (1) hide show
  1. fine-tune-QA.ipynb +11 -1175
fine-tune-QA.ipynb CHANGED
@@ -1209,12 +1209,12 @@
1209
  "evalue": "",
1210
  "output_type": "error",
1211
  "traceback": [
1212
- "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
1213
- "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)",
1214
- "Cell \u001b[0;32mIn[38], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mtrainer\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mtrain\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
1215
- "File \u001b[0;32m/data/miniconda3/envs/jxzhang/lib/python3.11/site-packages/transformers/trainer.py:1537\u001b[0m, in \u001b[0;36mTrainer.train\u001b[0;34m(self, resume_from_checkpoint, trial, ignore_keys_for_eval, **kwargs)\u001b[0m\n\u001b[1;32m 1535\u001b[0m hf_hub_utils\u001b[38;5;241m.\u001b[39menable_progress_bars()\n\u001b[1;32m 1536\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m-> 1537\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43minner_training_loop\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1538\u001b[0m \u001b[43m \u001b[49m\u001b[43margs\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1539\u001b[0m \u001b[43m \u001b[49m\u001b[43mresume_from_checkpoint\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mresume_from_checkpoint\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1540\u001b[0m \u001b[43m \u001b[49m\u001b[43mtrial\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtrial\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1541\u001b[0m \u001b[43m \u001b[49m\u001b[43mignore_keys_for_eval\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mignore_keys_for_eval\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1542\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n",
1216
- "File \u001b[0;32m/data/miniconda3/envs/jxzhang/lib/python3.11/site-packages/transformers/trainer.py:1859\u001b[0m, in \u001b[0;36mTrainer._inner_training_loop\u001b[0;34m(self, batch_size, args, resume_from_checkpoint, trial, ignore_keys_for_eval)\u001b[0m\n\u001b[1;32m 1853\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39maccelerator\u001b[38;5;241m.\u001b[39maccumulate(model):\n\u001b[1;32m 1854\u001b[0m tr_loss_step \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtraining_step(model, inputs)\n\u001b[1;32m 1856\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m (\n\u001b[1;32m 1857\u001b[0m args\u001b[38;5;241m.\u001b[39mlogging_nan_inf_filter\n\u001b[1;32m 1858\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m is_torch_tpu_available()\n\u001b[0;32m-> 1859\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m (torch\u001b[38;5;241m.\u001b[39misnan(tr_loss_step) \u001b[38;5;129;01mor\u001b[39;00m \u001b[43mtorch\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43misinf\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtr_loss_step\u001b[49m\u001b[43m)\u001b[49m)\n\u001b[1;32m 1860\u001b[0m ):\n\u001b[1;32m 1861\u001b[0m \u001b[38;5;66;03m# if loss is nan or inf simply add the average of previous logged losses\u001b[39;00m\n\u001b[1;32m 1862\u001b[0m tr_loss \u001b[38;5;241m+\u001b[39m\u001b[38;5;241m=\u001b[39m tr_loss \u001b[38;5;241m/\u001b[39m (\u001b[38;5;241m1\u001b[39m \u001b[38;5;241m+\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mstate\u001b[38;5;241m.\u001b[39mglobal_step \u001b[38;5;241m-\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_globalstep_last_logged)\n\u001b[1;32m 1863\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n",
1217
- "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
1218
  ]
1219
  }
1220
  ],
@@ -1501,1177 +1501,13 @@
1501
  },
1502
  {
1503
  "cell_type": "code",
1504
- "execution_count": 50,
1505
  "metadata": {
1506
- "scrolled": true
 
1507
  },
1508
- "outputs": [
1509
- {
1510
- "data": {
1511
- "text/plain": [
1512
- "{'input_ids': [[101,\n",
1513
- " 2029,\n",
1514
- " 5088,\n",
1515
- " 2136,\n",
1516
- " 3421,\n",
1517
- " 1996,\n",
1518
- " 10511,\n",
1519
- " 2012,\n",
1520
- " 3565,\n",
1521
- " 4605,\n",
1522
- " 2753,\n",
1523
- " 1029,\n",
1524
- " 102,\n",
1525
- " 3565,\n",
1526
- " 4605,\n",
1527
- " 2753,\n",
1528
- " 2001,\n",
1529
- " 2019,\n",
1530
- " 2137,\n",
1531
- " 2374,\n",
1532
- " 2208,\n",
1533
- " 2000,\n",
1534
- " 5646,\n",
1535
- " 1996,\n",
1536
- " 3410,\n",
1537
- " 1997,\n",
1538
- " 1996,\n",
1539
- " 2120,\n",
1540
- " 2374,\n",
1541
- " 2223,\n",
1542
- " 1006,\n",
1543
- " 5088,\n",
1544
- " 1007,\n",
1545
- " 2005,\n",
1546
- " 1996,\n",
1547
- " 2325,\n",
1548
- " 2161,\n",
1549
- " 1012,\n",
1550
- " 1996,\n",
1551
- " 2137,\n",
1552
- " 2374,\n",
1553
- " 3034,\n",
1554
- " 1006,\n",
1555
- " 10511,\n",
1556
- " 1007,\n",
1557
- " 3410,\n",
1558
- " 7573,\n",
1559
- " 14169,\n",
1560
- " 3249,\n",
1561
- " 1996,\n",
1562
- " 2120,\n",
1563
- " 2374,\n",
1564
- " 3034,\n",
1565
- " 1006,\n",
1566
- " 22309,\n",
1567
- " 1007,\n",
1568
- " 3410,\n",
1569
- " 3792,\n",
1570
- " 12915,\n",
1571
- " 2484,\n",
1572
- " 1516,\n",
1573
- " 2184,\n",
1574
- " 2000,\n",
1575
- " 7796,\n",
1576
- " 2037,\n",
1577
- " 2353,\n",
1578
- " 3565,\n",
1579
- " 4605,\n",
1580
- " 2516,\n",
1581
- " 1012,\n",
1582
- " 1996,\n",
1583
- " 2208,\n",
1584
- " 2001,\n",
1585
- " 2209,\n",
1586
- " 2006,\n",
1587
- " 2337,\n",
1588
- " 1021,\n",
1589
- " 1010,\n",
1590
- " 2355,\n",
1591
- " 1010,\n",
1592
- " 2012,\n",
1593
- " 11902,\n",
1594
- " 1005,\n",
1595
- " 1055,\n",
1596
- " 3346,\n",
1597
- " 1999,\n",
1598
- " 1996,\n",
1599
- " 2624,\n",
1600
- " 3799,\n",
1601
- " 3016,\n",
1602
- " 2181,\n",
1603
- " 2012,\n",
1604
- " 4203,\n",
1605
- " 10254,\n",
1606
- " 1010,\n",
1607
- " 2662,\n",
1608
- " 1012,\n",
1609
- " 2004,\n",
1610
- " 2023,\n",
1611
- " 2001,\n",
1612
- " 1996,\n",
1613
- " 12951,\n",
1614
- " 3565,\n",
1615
- " 4605,\n",
1616
- " 1010,\n",
1617
- " 1996,\n",
1618
- " 2223,\n",
1619
- " 13155,\n",
1620
- " 1996,\n",
1621
- " 1000,\n",
1622
- " 3585,\n",
1623
- " 5315,\n",
1624
- " 1000,\n",
1625
- " 2007,\n",
1626
- " 2536,\n",
1627
- " 2751,\n",
1628
- " 1011,\n",
1629
- " 11773,\n",
1630
- " 11107,\n",
1631
- " 1010,\n",
1632
- " 2004,\n",
1633
- " 2092,\n",
1634
- " 2004,\n",
1635
- " 8184,\n",
1636
- " 28324,\n",
1637
- " 2075,\n",
1638
- " 1996,\n",
1639
- " 4535,\n",
1640
- " 1997,\n",
1641
- " 10324,\n",
1642
- " 2169,\n",
1643
- " 3565,\n",
1644
- " 4605,\n",
1645
- " 2208,\n",
1646
- " 2007,\n",
1647
- " 3142,\n",
1648
- " 16371,\n",
1649
- " 28990,\n",
1650
- " 2015,\n",
1651
- " 1006,\n",
1652
- " 2104,\n",
1653
- " 2029,\n",
1654
- " 1996,\n",
1655
- " 2208,\n",
1656
- " 2052,\n",
1657
- " 2031,\n",
1658
- " 2042,\n",
1659
- " 2124,\n",
1660
- " 2004,\n",
1661
- " 1000,\n",
1662
- " 3565,\n",
1663
- " 4605,\n",
1664
- " 1048,\n",
1665
- " 1000,\n",
1666
- " 1007,\n",
1667
- " 1010,\n",
1668
- " 2061,\n",
1669
- " 2008,\n",
1670
- " 1996,\n",
1671
- " 8154,\n",
1672
- " 2071,\n",
1673
- " 14500,\n",
1674
- " 3444,\n",
1675
- " 1996,\n",
1676
- " 5640,\n",
1677
- " 16371,\n",
1678
- " 28990,\n",
1679
- " 2015,\n",
1680
- " 2753,\n",
1681
- " 1012,\n",
1682
- " 102,\n",
1683
- " 0,\n",
1684
- " 0,\n",
1685
- " 0,\n",
1686
- " 0,\n",
1687
- " 0,\n",
1688
- " 0,\n",
1689
- " 0,\n",
1690
- " 0,\n",
1691
- " 0,\n",
1692
- " 0,\n",
1693
- " 0,\n",
1694
- " 0,\n",
1695
- " 0,\n",
1696
- " 0,\n",
1697
- " 0,\n",
1698
- " 0,\n",
1699
- " 0,\n",
1700
- " 0,\n",
1701
- " 0,\n",
1702
- " 0,\n",
1703
- " 0,\n",
1704
- " 0,\n",
1705
- " 0,\n",
1706
- " 0,\n",
1707
- " 0,\n",
1708
- " 0,\n",
1709
- " 0,\n",
1710
- " 0,\n",
1711
- " 0,\n",
1712
- " 0,\n",
1713
- " 0,\n",
1714
- " 0,\n",
1715
- " 0,\n",
1716
- " 0,\n",
1717
- " 0,\n",
1718
- " 0,\n",
1719
- " 0,\n",
1720
- " 0,\n",
1721
- " 0,\n",
1722
- " 0,\n",
1723
- " 0,\n",
1724
- " 0,\n",
1725
- " 0,\n",
1726
- " 0,\n",
1727
- " 0,\n",
1728
- " 0,\n",
1729
- " 0,\n",
1730
- " 0,\n",
1731
- " 0,\n",
1732
- " 0,\n",
1733
- " 0,\n",
1734
- " 0,\n",
1735
- " 0,\n",
1736
- " 0,\n",
1737
- " 0,\n",
1738
- " 0,\n",
1739
- " 0,\n",
1740
- " 0,\n",
1741
- " 0,\n",
1742
- " 0,\n",
1743
- " 0,\n",
1744
- " 0,\n",
1745
- " 0,\n",
1746
- " 0,\n",
1747
- " 0,\n",
1748
- " 0,\n",
1749
- " 0,\n",
1750
- " 0,\n",
1751
- " 0,\n",
1752
- " 0,\n",
1753
- " 0,\n",
1754
- " 0,\n",
1755
- " 0,\n",
1756
- " 0,\n",
1757
- " 0,\n",
1758
- " 0,\n",
1759
- " 0,\n",
1760
- " 0,\n",
1761
- " 0,\n",
1762
- " 0,\n",
1763
- " 0,\n",
1764
- " 0,\n",
1765
- " 0,\n",
1766
- " 0,\n",
1767
- " 0,\n",
1768
- " 0,\n",
1769
- " 0,\n",
1770
- " 0,\n",
1771
- " 0,\n",
1772
- " 0,\n",
1773
- " 0,\n",
1774
- " 0,\n",
1775
- " 0,\n",
1776
- " 0,\n",
1777
- " 0,\n",
1778
- " 0,\n",
1779
- " 0,\n",
1780
- " 0,\n",
1781
- " 0,\n",
1782
- " 0,\n",
1783
- " 0,\n",
1784
- " 0,\n",
1785
- " 0,\n",
1786
- " 0,\n",
1787
- " 0,\n",
1788
- " 0,\n",
1789
- " 0,\n",
1790
- " 0,\n",
1791
- " 0,\n",
1792
- " 0,\n",
1793
- " 0,\n",
1794
- " 0,\n",
1795
- " 0,\n",
1796
- " 0,\n",
1797
- " 0,\n",
1798
- " 0,\n",
1799
- " 0,\n",
1800
- " 0,\n",
1801
- " 0,\n",
1802
- " 0,\n",
1803
- " 0,\n",
1804
- " 0,\n",
1805
- " 0,\n",
1806
- " 0,\n",
1807
- " 0,\n",
1808
- " 0,\n",
1809
- " 0,\n",
1810
- " 0,\n",
1811
- " 0,\n",
1812
- " 0,\n",
1813
- " 0,\n",
1814
- " 0,\n",
1815
- " 0,\n",
1816
- " 0,\n",
1817
- " 0,\n",
1818
- " 0,\n",
1819
- " 0,\n",
1820
- " 0,\n",
1821
- " 0,\n",
1822
- " 0,\n",
1823
- " 0,\n",
1824
- " 0,\n",
1825
- " 0,\n",
1826
- " 0,\n",
1827
- " 0,\n",
1828
- " 0,\n",
1829
- " 0,\n",
1830
- " 0,\n",
1831
- " 0,\n",
1832
- " 0,\n",
1833
- " 0,\n",
1834
- " 0,\n",
1835
- " 0,\n",
1836
- " 0,\n",
1837
- " 0,\n",
1838
- " 0,\n",
1839
- " 0,\n",
1840
- " 0,\n",
1841
- " 0,\n",
1842
- " 0,\n",
1843
- " 0,\n",
1844
- " 0,\n",
1845
- " 0,\n",
1846
- " 0,\n",
1847
- " 0,\n",
1848
- " 0,\n",
1849
- " 0,\n",
1850
- " 0,\n",
1851
- " 0,\n",
1852
- " 0,\n",
1853
- " 0,\n",
1854
- " 0,\n",
1855
- " 0,\n",
1856
- " 0,\n",
1857
- " 0,\n",
1858
- " 0,\n",
1859
- " 0,\n",
1860
- " 0,\n",
1861
- " 0,\n",
1862
- " 0,\n",
1863
- " 0,\n",
1864
- " 0,\n",
1865
- " 0,\n",
1866
- " 0,\n",
1867
- " 0,\n",
1868
- " 0,\n",
1869
- " 0,\n",
1870
- " 0,\n",
1871
- " 0,\n",
1872
- " 0,\n",
1873
- " 0,\n",
1874
- " 0,\n",
1875
- " 0,\n",
1876
- " 0,\n",
1877
- " 0,\n",
1878
- " 0,\n",
1879
- " 0,\n",
1880
- " 0,\n",
1881
- " 0,\n",
1882
- " 0,\n",
1883
- " 0,\n",
1884
- " 0,\n",
1885
- " 0,\n",
1886
- " 0,\n",
1887
- " 0,\n",
1888
- " 0,\n",
1889
- " 0,\n",
1890
- " 0,\n",
1891
- " 0,\n",
1892
- " 0,\n",
1893
- " 0,\n",
1894
- " 0,\n",
1895
- " 0]],\n",
1896
- " 'attention_mask': [[1,\n",
1897
- " 1,\n",
1898
- " 1,\n",
1899
- " 1,\n",
1900
- " 1,\n",
1901
- " 1,\n",
1902
- " 1,\n",
1903
- " 1,\n",
1904
- " 1,\n",
1905
- " 1,\n",
1906
- " 1,\n",
1907
- " 1,\n",
1908
- " 1,\n",
1909
- " 1,\n",
1910
- " 1,\n",
1911
- " 1,\n",
1912
- " 1,\n",
1913
- " 1,\n",
1914
- " 1,\n",
1915
- " 1,\n",
1916
- " 1,\n",
1917
- " 1,\n",
1918
- " 1,\n",
1919
- " 1,\n",
1920
- " 1,\n",
1921
- " 1,\n",
1922
- " 1,\n",
1923
- " 1,\n",
1924
- " 1,\n",
1925
- " 1,\n",
1926
- " 1,\n",
1927
- " 1,\n",
1928
- " 1,\n",
1929
- " 1,\n",
1930
- " 1,\n",
1931
- " 1,\n",
1932
- " 1,\n",
1933
- " 1,\n",
1934
- " 1,\n",
1935
- " 1,\n",
1936
- " 1,\n",
1937
- " 1,\n",
1938
- " 1,\n",
1939
- " 1,\n",
1940
- " 1,\n",
1941
- " 1,\n",
1942
- " 1,\n",
1943
- " 1,\n",
1944
- " 1,\n",
1945
- " 1,\n",
1946
- " 1,\n",
1947
- " 1,\n",
1948
- " 1,\n",
1949
- " 1,\n",
1950
- " 1,\n",
1951
- " 1,\n",
1952
- " 1,\n",
1953
- " 1,\n",
1954
- " 1,\n",
1955
- " 1,\n",
1956
- " 1,\n",
1957
- " 1,\n",
1958
- " 1,\n",
1959
- " 1,\n",
1960
- " 1,\n",
1961
- " 1,\n",
1962
- " 1,\n",
1963
- " 1,\n",
1964
- " 1,\n",
1965
- " 1,\n",
1966
- " 1,\n",
1967
- " 1,\n",
1968
- " 1,\n",
1969
- " 1,\n",
1970
- " 1,\n",
1971
- " 1,\n",
1972
- " 1,\n",
1973
- " 1,\n",
1974
- " 1,\n",
1975
- " 1,\n",
1976
- " 1,\n",
1977
- " 1,\n",
1978
- " 1,\n",
1979
- " 1,\n",
1980
- " 1,\n",
1981
- " 1,\n",
1982
- " 1,\n",
1983
- " 1,\n",
1984
- " 1,\n",
1985
- " 1,\n",
1986
- " 1,\n",
1987
- " 1,\n",
1988
- " 1,\n",
1989
- " 1,\n",
1990
- " 1,\n",
1991
- " 1,\n",
1992
- " 1,\n",
1993
- " 1,\n",
1994
- " 1,\n",
1995
- " 1,\n",
1996
- " 1,\n",
1997
- " 1,\n",
1998
- " 1,\n",
1999
- " 1,\n",
2000
- " 1,\n",
2001
- " 1,\n",
2002
- " 1,\n",
2003
- " 1,\n",
2004
- " 1,\n",
2005
- " 1,\n",
2006
- " 1,\n",
2007
- " 1,\n",
2008
- " 1,\n",
2009
- " 1,\n",
2010
- " 1,\n",
2011
- " 1,\n",
2012
- " 1,\n",
2013
- " 1,\n",
2014
- " 1,\n",
2015
- " 1,\n",
2016
- " 1,\n",
2017
- " 1,\n",
2018
- " 1,\n",
2019
- " 1,\n",
2020
- " 1,\n",
2021
- " 1,\n",
2022
- " 1,\n",
2023
- " 1,\n",
2024
- " 1,\n",
2025
- " 1,\n",
2026
- " 1,\n",
2027
- " 1,\n",
2028
- " 1,\n",
2029
- " 1,\n",
2030
- " 1,\n",
2031
- " 1,\n",
2032
- " 1,\n",
2033
- " 1,\n",
2034
- " 1,\n",
2035
- " 1,\n",
2036
- " 1,\n",
2037
- " 1,\n",
2038
- " 1,\n",
2039
- " 1,\n",
2040
- " 1,\n",
2041
- " 1,\n",
2042
- " 1,\n",
2043
- " 1,\n",
2044
- " 1,\n",
2045
- " 1,\n",
2046
- " 1,\n",
2047
- " 1,\n",
2048
- " 1,\n",
2049
- " 1,\n",
2050
- " 1,\n",
2051
- " 1,\n",
2052
- " 1,\n",
2053
- " 1,\n",
2054
- " 1,\n",
2055
- " 1,\n",
2056
- " 1,\n",
2057
- " 1,\n",
2058
- " 1,\n",
2059
- " 1,\n",
2060
- " 1,\n",
2061
- " 1,\n",
2062
- " 1,\n",
2063
- " 1,\n",
2064
- " 1,\n",
2065
- " 1,\n",
2066
- " 1,\n",
2067
- " 0,\n",
2068
- " 0,\n",
2069
- " 0,\n",
2070
- " 0,\n",
2071
- " 0,\n",
2072
- " 0,\n",
2073
- " 0,\n",
2074
- " 0,\n",
2075
- " 0,\n",
2076
- " 0,\n",
2077
- " 0,\n",
2078
- " 0,\n",
2079
- " 0,\n",
2080
- " 0,\n",
2081
- " 0,\n",
2082
- " 0,\n",
2083
- " 0,\n",
2084
- " 0,\n",
2085
- " 0,\n",
2086
- " 0,\n",
2087
- " 0,\n",
2088
- " 0,\n",
2089
- " 0,\n",
2090
- " 0,\n",
2091
- " 0,\n",
2092
- " 0,\n",
2093
- " 0,\n",
2094
- " 0,\n",
2095
- " 0,\n",
2096
- " 0,\n",
2097
- " 0,\n",
2098
- " 0,\n",
2099
- " 0,\n",
2100
- " 0,\n",
2101
- " 0,\n",
2102
- " 0,\n",
2103
- " 0,\n",
2104
- " 0,\n",
2105
- " 0,\n",
2106
- " 0,\n",
2107
- " 0,\n",
2108
- " 0,\n",
2109
- " 0,\n",
2110
- " 0,\n",
2111
- " 0,\n",
2112
- " 0,\n",
2113
- " 0,\n",
2114
- " 0,\n",
2115
- " 0,\n",
2116
- " 0,\n",
2117
- " 0,\n",
2118
- " 0,\n",
2119
- " 0,\n",
2120
- " 0,\n",
2121
- " 0,\n",
2122
- " 0,\n",
2123
- " 0,\n",
2124
- " 0,\n",
2125
- " 0,\n",
2126
- " 0,\n",
2127
- " 0,\n",
2128
- " 0,\n",
2129
- " 0,\n",
2130
- " 0,\n",
2131
- " 0,\n",
2132
- " 0,\n",
2133
- " 0,\n",
2134
- " 0,\n",
2135
- " 0,\n",
2136
- " 0,\n",
2137
- " 0,\n",
2138
- " 0,\n",
2139
- " 0,\n",
2140
- " 0,\n",
2141
- " 0,\n",
2142
- " 0,\n",
2143
- " 0,\n",
2144
- " 0,\n",
2145
- " 0,\n",
2146
- " 0,\n",
2147
- " 0,\n",
2148
- " 0,\n",
2149
- " 0,\n",
2150
- " 0,\n",
2151
- " 0,\n",
2152
- " 0,\n",
2153
- " 0,\n",
2154
- " 0,\n",
2155
- " 0,\n",
2156
- " 0,\n",
2157
- " 0,\n",
2158
- " 0,\n",
2159
- " 0,\n",
2160
- " 0,\n",
2161
- " 0,\n",
2162
- " 0,\n",
2163
- " 0,\n",
2164
- " 0,\n",
2165
- " 0,\n",
2166
- " 0,\n",
2167
- " 0,\n",
2168
- " 0,\n",
2169
- " 0,\n",
2170
- " 0,\n",
2171
- " 0,\n",
2172
- " 0,\n",
2173
- " 0,\n",
2174
- " 0,\n",
2175
- " 0,\n",
2176
- " 0,\n",
2177
- " 0,\n",
2178
- " 0,\n",
2179
- " 0,\n",
2180
- " 0,\n",
2181
- " 0,\n",
2182
- " 0,\n",
2183
- " 0,\n",
2184
- " 0,\n",
2185
- " 0,\n",
2186
- " 0,\n",
2187
- " 0,\n",
2188
- " 0,\n",
2189
- " 0,\n",
2190
- " 0,\n",
2191
- " 0,\n",
2192
- " 0,\n",
2193
- " 0,\n",
2194
- " 0,\n",
2195
- " 0,\n",
2196
- " 0,\n",
2197
- " 0,\n",
2198
- " 0,\n",
2199
- " 0,\n",
2200
- " 0,\n",
2201
- " 0,\n",
2202
- " 0,\n",
2203
- " 0,\n",
2204
- " 0,\n",
2205
- " 0,\n",
2206
- " 0,\n",
2207
- " 0,\n",
2208
- " 0,\n",
2209
- " 0,\n",
2210
- " 0,\n",
2211
- " 0,\n",
2212
- " 0,\n",
2213
- " 0,\n",
2214
- " 0,\n",
2215
- " 0,\n",
2216
- " 0,\n",
2217
- " 0,\n",
2218
- " 0,\n",
2219
- " 0,\n",
2220
- " 0,\n",
2221
- " 0,\n",
2222
- " 0,\n",
2223
- " 0,\n",
2224
- " 0,\n",
2225
- " 0,\n",
2226
- " 0,\n",
2227
- " 0,\n",
2228
- " 0,\n",
2229
- " 0,\n",
2230
- " 0,\n",
2231
- " 0,\n",
2232
- " 0,\n",
2233
- " 0,\n",
2234
- " 0,\n",
2235
- " 0,\n",
2236
- " 0,\n",
2237
- " 0,\n",
2238
- " 0,\n",
2239
- " 0,\n",
2240
- " 0,\n",
2241
- " 0,\n",
2242
- " 0,\n",
2243
- " 0,\n",
2244
- " 0,\n",
2245
- " 0,\n",
2246
- " 0,\n",
2247
- " 0,\n",
2248
- " 0,\n",
2249
- " 0,\n",
2250
- " 0,\n",
2251
- " 0,\n",
2252
- " 0,\n",
2253
- " 0,\n",
2254
- " 0,\n",
2255
- " 0,\n",
2256
- " 0,\n",
2257
- " 0,\n",
2258
- " 0,\n",
2259
- " 0,\n",
2260
- " 0,\n",
2261
- " 0,\n",
2262
- " 0,\n",
2263
- " 0,\n",
2264
- " 0,\n",
2265
- " 0,\n",
2266
- " 0,\n",
2267
- " 0,\n",
2268
- " 0,\n",
2269
- " 0,\n",
2270
- " 0,\n",
2271
- " 0,\n",
2272
- " 0,\n",
2273
- " 0,\n",
2274
- " 0,\n",
2275
- " 0,\n",
2276
- " 0,\n",
2277
- " 0,\n",
2278
- " 0,\n",
2279
- " 0]],\n",
2280
- " 'offset_mapping': [[None,\n",
2281
- " None,\n",
2282
- " None,\n",
2283
- " None,\n",
2284
- " None,\n",
2285
- " None,\n",
2286
- " None,\n",
2287
- " None,\n",
2288
- " None,\n",
2289
- " None,\n",
2290
- " None,\n",
2291
- " None,\n",
2292
- " None,\n",
2293
- " [0, 5],\n",
2294
- " [6, 10],\n",
2295
- " [11, 13],\n",
2296
- " [14, 17],\n",
2297
- " [18, 20],\n",
2298
- " [21, 29],\n",
2299
- " [30, 38],\n",
2300
- " [39, 43],\n",
2301
- " [44, 46],\n",
2302
- " [47, 56],\n",
2303
- " [57, 60],\n",
2304
- " [61, 69],\n",
2305
- " [70, 72],\n",
2306
- " [73, 76],\n",
2307
- " [77, 85],\n",
2308
- " [86, 94],\n",
2309
- " [95, 101],\n",
2310
- " [102, 103],\n",
2311
- " [103, 106],\n",
2312
- " [106, 107],\n",
2313
- " [108, 111],\n",
2314
- " [112, 115],\n",
2315
- " [116, 120],\n",
2316
- " [121, 127],\n",
2317
- " [127, 128],\n",
2318
- " [129, 132],\n",
2319
- " [133, 141],\n",
2320
- " [142, 150],\n",
2321
- " [151, 161],\n",
2322
- " [162, 163],\n",
2323
- " [163, 166],\n",
2324
- " [166, 167],\n",
2325
- " [168, 176],\n",
2326
- " [177, 183],\n",
2327
- " [184, 191],\n",
2328
- " [192, 200],\n",
2329
- " [201, 204],\n",
2330
- " [205, 213],\n",
2331
- " [214, 222],\n",
2332
- " [223, 233],\n",
2333
- " [234, 235],\n",
2334
- " [235, 238],\n",
2335
- " [238, 239],\n",
2336
- " [240, 248],\n",
2337
- " [249, 257],\n",
2338
- " [258, 266],\n",
2339
- " [267, 269],\n",
2340
- " [269, 270],\n",
2341
- " [270, 272],\n",
2342
- " [273, 275],\n",
2343
- " [276, 280],\n",
2344
- " [281, 286],\n",
2345
- " [287, 292],\n",
2346
- " [293, 298],\n",
2347
- " [299, 303],\n",
2348
- " [304, 309],\n",
2349
- " [309, 310],\n",
2350
- " [311, 314],\n",
2351
- " [315, 319],\n",
2352
- " [320, 323],\n",
2353
- " [324, 330],\n",
2354
- " [331, 333],\n",
2355
- " [334, 342],\n",
2356
- " [343, 344],\n",
2357
- " [344, 345],\n",
2358
- " [346, 350],\n",
2359
- " [350, 351],\n",
2360
- " [352, 354],\n",
2361
- " [355, 359],\n",
2362
- " [359, 360],\n",
2363
- " [360, 361],\n",
2364
- " [362, 369],\n",
2365
- " [370, 372],\n",
2366
- " [373, 376],\n",
2367
- " [377, 380],\n",
2368
- " [381, 390],\n",
2369
- " [391, 394],\n",
2370
- " [395, 399],\n",
2371
- " [400, 402],\n",
2372
- " [403, 408],\n",
2373
- " [409, 414],\n",
2374
- " [414, 415],\n",
2375
- " [416, 426],\n",
2376
- " [426, 427],\n",
2377
- " [428, 430],\n",
2378
- " [431, 435],\n",
2379
- " [436, 439],\n",
2380
- " [440, 443],\n",
2381
- " [444, 448],\n",
2382
- " [449, 454],\n",
2383
- " [455, 459],\n",
2384
- " [459, 460],\n",
2385
- " [461, 464],\n",
2386
- " [465, 471],\n",
2387
- " [472, 482],\n",
2388
- " [483, 486],\n",
2389
- " [487, 488],\n",
2390
- " [488, 494],\n",
2391
- " [495, 506],\n",
2392
- " [506, 507],\n",
2393
- " [508, 512],\n",
2394
- " [513, 520],\n",
2395
- " [521, 525],\n",
2396
- " [525, 526],\n",
2397
- " [526, 532],\n",
2398
- " [533, 544],\n",
2399
- " [544, 545],\n",
2400
- " [546, 548],\n",
2401
- " [549, 553],\n",
2402
- " [554, 556],\n",
2403
- " [557, 568],\n",
2404
- " [569, 576],\n",
2405
- " [576, 579],\n",
2406
- " [580, 583],\n",
2407
- " [584, 593],\n",
2408
- " [594, 596],\n",
2409
- " [597, 603],\n",
2410
- " [604, 608],\n",
2411
- " [609, 614],\n",
2412
- " [615, 619],\n",
2413
- " [620, 624],\n",
2414
- " [625, 629],\n",
2415
- " [630, 635],\n",
2416
- " [636, 638],\n",
2417
- " [638, 643],\n",
2418
- " [643, 644],\n",
2419
- " [645, 646],\n",
2420
- " [646, 651],\n",
2421
- " [652, 657],\n",
2422
- " [658, 661],\n",
2423
- " [662, 666],\n",
2424
- " [667, 672],\n",
2425
- " [673, 677],\n",
2426
- " [678, 682],\n",
2427
- " [683, 688],\n",
2428
- " [689, 691],\n",
2429
- " [692, 693],\n",
2430
- " [693, 698],\n",
2431
- " [699, 703],\n",
2432
- " [704, 705],\n",
2433
- " [705, 706],\n",
2434
- " [706, 707],\n",
2435
- " [707, 708],\n",
2436
- " [709, 711],\n",
2437
- " [712, 716],\n",
2438
- " [717, 720],\n",
2439
- " [721, 725],\n",
2440
- " [726, 731],\n",
2441
- " [732, 743],\n",
2442
- " [744, 751],\n",
2443
- " [752, 755],\n",
2444
- " [756, 762],\n",
2445
- " [763, 765],\n",
2446
- " [765, 770],\n",
2447
- " [770, 771],\n",
2448
- " [772, 774],\n",
2449
- " [774, 775],\n",
2450
- " None,\n",
2451
- " None,\n",
2452
- " None,\n",
2453
- " None,\n",
2454
- " None,\n",
2455
- " None,\n",
2456
- " None,\n",
2457
- " None,\n",
2458
- " None,\n",
2459
- " None,\n",
2460
- " None,\n",
2461
- " None,\n",
2462
- " None,\n",
2463
- " None,\n",
2464
- " None,\n",
2465
- " None,\n",
2466
- " None,\n",
2467
- " None,\n",
2468
- " None,\n",
2469
- " None,\n",
2470
- " None,\n",
2471
- " None,\n",
2472
- " None,\n",
2473
- " None,\n",
2474
- " None,\n",
2475
- " None,\n",
2476
- " None,\n",
2477
- " None,\n",
2478
- " None,\n",
2479
- " None,\n",
2480
- " None,\n",
2481
- " None,\n",
2482
- " None,\n",
2483
- " None,\n",
2484
- " None,\n",
2485
- " None,\n",
2486
- " None,\n",
2487
- " None,\n",
2488
- " None,\n",
2489
- " None,\n",
2490
- " None,\n",
2491
- " None,\n",
2492
- " None,\n",
2493
- " None,\n",
2494
- " None,\n",
2495
- " None,\n",
2496
- " None,\n",
2497
- " None,\n",
2498
- " None,\n",
2499
- " None,\n",
2500
- " None,\n",
2501
- " None,\n",
2502
- " None,\n",
2503
- " None,\n",
2504
- " None,\n",
2505
- " None,\n",
2506
- " None,\n",
2507
- " None,\n",
2508
- " None,\n",
2509
- " None,\n",
2510
- " None,\n",
2511
- " None,\n",
2512
- " None,\n",
2513
- " None,\n",
2514
- " None,\n",
2515
- " None,\n",
2516
- " None,\n",
2517
- " None,\n",
2518
- " None,\n",
2519
- " None,\n",
2520
- " None,\n",
2521
- " None,\n",
2522
- " None,\n",
2523
- " None,\n",
2524
- " None,\n",
2525
- " None,\n",
2526
- " None,\n",
2527
- " None,\n",
2528
- " None,\n",
2529
- " None,\n",
2530
- " None,\n",
2531
- " None,\n",
2532
- " None,\n",
2533
- " None,\n",
2534
- " None,\n",
2535
- " None,\n",
2536
- " None,\n",
2537
- " None,\n",
2538
- " None,\n",
2539
- " None,\n",
2540
- " None,\n",
2541
- " None,\n",
2542
- " None,\n",
2543
- " None,\n",
2544
- " None,\n",
2545
- " None,\n",
2546
- " None,\n",
2547
- " None,\n",
2548
- " None,\n",
2549
- " None,\n",
2550
- " None,\n",
2551
- " None,\n",
2552
- " None,\n",
2553
- " None,\n",
2554
- " None,\n",
2555
- " None,\n",
2556
- " None,\n",
2557
- " None,\n",
2558
- " None,\n",
2559
- " None,\n",
2560
- " None,\n",
2561
- " None,\n",
2562
- " None,\n",
2563
- " None,\n",
2564
- " None,\n",
2565
- " None,\n",
2566
- " None,\n",
2567
- " None,\n",
2568
- " None,\n",
2569
- " None,\n",
2570
- " None,\n",
2571
- " None,\n",
2572
- " None,\n",
2573
- " None,\n",
2574
- " None,\n",
2575
- " None,\n",
2576
- " None,\n",
2577
- " None,\n",
2578
- " None,\n",
2579
- " None,\n",
2580
- " None,\n",
2581
- " None,\n",
2582
- " None,\n",
2583
- " None,\n",
2584
- " None,\n",
2585
- " None,\n",
2586
- " None,\n",
2587
- " None,\n",
2588
- " None,\n",
2589
- " None,\n",
2590
- " None,\n",
2591
- " None,\n",
2592
- " None,\n",
2593
- " None,\n",
2594
- " None,\n",
2595
- " None,\n",
2596
- " None,\n",
2597
- " None,\n",
2598
- " None,\n",
2599
- " None,\n",
2600
- " None,\n",
2601
- " None,\n",
2602
- " None,\n",
2603
- " None,\n",
2604
- " None,\n",
2605
- " None,\n",
2606
- " None,\n",
2607
- " None,\n",
2608
- " None,\n",
2609
- " None,\n",
2610
- " None,\n",
2611
- " None,\n",
2612
- " None,\n",
2613
- " None,\n",
2614
- " None,\n",
2615
- " None,\n",
2616
- " None,\n",
2617
- " None,\n",
2618
- " None,\n",
2619
- " None,\n",
2620
- " None,\n",
2621
- " None,\n",
2622
- " None,\n",
2623
- " None,\n",
2624
- " None,\n",
2625
- " None,\n",
2626
- " None,\n",
2627
- " None,\n",
2628
- " None,\n",
2629
- " None,\n",
2630
- " None,\n",
2631
- " None,\n",
2632
- " None,\n",
2633
- " None,\n",
2634
- " None,\n",
2635
- " None,\n",
2636
- " None,\n",
2637
- " None,\n",
2638
- " None,\n",
2639
- " None,\n",
2640
- " None,\n",
2641
- " None,\n",
2642
- " None,\n",
2643
- " None,\n",
2644
- " None,\n",
2645
- " None,\n",
2646
- " None,\n",
2647
- " None,\n",
2648
- " None,\n",
2649
- " None,\n",
2650
- " None,\n",
2651
- " None,\n",
2652
- " None,\n",
2653
- " None,\n",
2654
- " None,\n",
2655
- " None,\n",
2656
- " None,\n",
2657
- " None,\n",
2658
- " None,\n",
2659
- " None,\n",
2660
- " None,\n",
2661
- " None,\n",
2662
- " None,\n",
2663
- " None]],\n",
2664
- " 'example_id': ['56be4db0acb8001400a502ec']}"
2665
- ]
2666
- },
2667
- "execution_count": 50,
2668
- "metadata": {},
2669
- "output_type": "execute_result"
2670
- }
2671
- ],
2672
- "source": [
2673
- "validation_features[:1]"
2674
- ]
2675
  },
2676
  {
2677
  "cell_type": "markdown",
 
1209
  "evalue": "",
1210
  "output_type": "error",
1211
  "traceback": [
1212
+ "\u001B[0;31m---------------------------------------------------------------------------\u001B[0m",
1213
+ "\u001B[0;31mKeyboardInterrupt\u001B[0m Traceback (most recent call last)",
1214
+ "Cell \u001B[0;32mIn[38], line 1\u001B[0m\n\u001B[0;32m----> 1\u001B[0m \u001B[43mtrainer\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mtrain\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n",
1215
+ "File \u001B[0;32m/data/miniconda3/envs/jxzhang/lib/python3.11/site-packages/transformers/trainer.py:1537\u001B[0m, in \u001B[0;36mTrainer.train\u001B[0;34m(self, resume_from_checkpoint, trial, ignore_keys_for_eval, **kwargs)\u001B[0m\n\u001B[1;32m 1535\u001B[0m hf_hub_utils\u001B[38;5;241m.\u001B[39menable_progress_bars()\n\u001B[1;32m 1536\u001B[0m \u001B[38;5;28;01melse\u001B[39;00m:\n\u001B[0;32m-> 1537\u001B[0m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[43minner_training_loop\u001B[49m\u001B[43m(\u001B[49m\n\u001B[1;32m 1538\u001B[0m \u001B[43m \u001B[49m\u001B[43margs\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43margs\u001B[49m\u001B[43m,\u001B[49m\n\u001B[1;32m 1539\u001B[0m \u001B[43m \u001B[49m\u001B[43mresume_from_checkpoint\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mresume_from_checkpoint\u001B[49m\u001B[43m,\u001B[49m\n\u001B[1;32m 1540\u001B[0m \u001B[43m \u001B[49m\u001B[43mtrial\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mtrial\u001B[49m\u001B[43m,\u001B[49m\n\u001B[1;32m 1541\u001B[0m \u001B[43m \u001B[49m\u001B[43mignore_keys_for_eval\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mignore_keys_for_eval\u001B[49m\u001B[43m,\u001B[49m\n\u001B[1;32m 1542\u001B[0m \u001B[43m \u001B[49m\u001B[43m)\u001B[49m\n",
1216
+ "File \u001B[0;32m/data/miniconda3/envs/jxzhang/lib/python3.11/site-packages/transformers/trainer.py:1859\u001B[0m, in \u001B[0;36mTrainer._inner_training_loop\u001B[0;34m(self, batch_size, args, resume_from_checkpoint, trial, ignore_keys_for_eval)\u001B[0m\n\u001B[1;32m 1853\u001B[0m \u001B[38;5;28;01mwith\u001B[39;00m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39maccelerator\u001B[38;5;241m.\u001B[39maccumulate(model):\n\u001B[1;32m 1854\u001B[0m tr_loss_step \u001B[38;5;241m=\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39mtraining_step(model, inputs)\n\u001B[1;32m 1856\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m (\n\u001B[1;32m 1857\u001B[0m args\u001B[38;5;241m.\u001B[39mlogging_nan_inf_filter\n\u001B[1;32m 1858\u001B[0m \u001B[38;5;129;01mand\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m is_torch_tpu_available()\n\u001B[0;32m-> 1859\u001B[0m \u001B[38;5;129;01mand\u001B[39;00m (torch\u001B[38;5;241m.\u001B[39misnan(tr_loss_step) \u001B[38;5;129;01mor\u001B[39;00m \u001B[43mtorch\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43misinf\u001B[49m\u001B[43m(\u001B[49m\u001B[43mtr_loss_step\u001B[49m\u001B[43m)\u001B[49m)\n\u001B[1;32m 1860\u001B[0m ):\n\u001B[1;32m 1861\u001B[0m \u001B[38;5;66;03m# if loss is nan or inf simply add the average of previous logged losses\u001B[39;00m\n\u001B[1;32m 1862\u001B[0m tr_loss \u001B[38;5;241m+\u001B[39m\u001B[38;5;241m=\u001B[39m tr_loss \u001B[38;5;241m/\u001B[39m (\u001B[38;5;241m1\u001B[39m \u001B[38;5;241m+\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39mstate\u001B[38;5;241m.\u001B[39mglobal_step \u001B[38;5;241m-\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39m_globalstep_last_logged)\n\u001B[1;32m 1863\u001B[0m \u001B[38;5;28;01melse\u001B[39;00m:\n",
1217
+ "\u001B[0;31mKeyboardInterrupt\u001B[0m: "
1218
  ]
1219
  }
1220
  ],
 
1501
  },
1502
  {
1503
  "cell_type": "code",
1504
+ "execution_count": null,
1505
  "metadata": {
1506
+ "scrolled": true,
1507
+ "is_executing": true
1508
  },
1509
+ "outputs": [],
1510
+ "source": []
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1511
  },
1512
  {
1513
  "cell_type": "markdown",