Add files using upload-large-folder tool
Browse files- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/logitnormal_mid_mask1_swiglu_step40k_lm1b_1024steps_ppl20_decode_n8/summary.json +0 -0
- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/tpow2_step190k_lm1b_normal_steps128_c256_t1p3_n8/context1024_samples.txt +29 -0
- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/tpow2_step190k_lm1b_normal_steps128_c256_t1p3_n8/run.log +59 -0
- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps160_c192_temps.log +19 -0
- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps160_c256_temps.log +19 -0
- LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps96_c128_temps.log +19 -0
- LTA_openwebtext_dualt/logs/ctx1024_sampleds_sweep_4gpu/ctx1024_tradeoff_dual_20260517_225705.log +1307 -0
- LTA_openwebtext_dualt/logs/ctx1024_sampleds_sweep_4gpu/t5tok_ctx1024_randk_20260518_014800.log +2621 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/__init__.py +31 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/emphasis.py +102 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/escape.py +93 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/state_inline.py +167 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/strikethrough.py +173 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/text.py +23 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/pop2piano/__init__.py +27 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/pop2piano/feature_extraction_pop2piano.py +452 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/__init__.py +27 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/configuration_sew_d.py +196 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/modeling_sew_d.py +1621 -0
- LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/vision_text_dual_encoder/__init__.py +28 -0
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/logitnormal_mid_mask1_swiglu_step40k_lm1b_1024steps_ppl20_decode_n8/summary.json
ADDED
|
File without changes
|
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/tpow2_step190k_lm1b_normal_steps128_c256_t1p3_n8/context1024_samples.txt
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<|endoftext|> on the front console console. Cut in the top of the lid on the right bottom panel of the front console. Cut down down from the front panel and it’s just as up from the bottom of console to the bottom of the panel. Take up the left console panel down to the front console. The front panel on the back of the left console console. Cut the front panel to the left end of the left console panel on the front console. With the left end of the front console you will see the button to open up the front panel. Cut down to the right of the front panel to remove the lid from the console into the console. The door to open the front console. Cut the console on to the front console with the front console on the right console console. In the front console you can see this slide down from the front console. Move the console to the left. Remove the left panel from the console panel. Once the console has moved to the front console on the front console you’ll see a cross through the right end of the left console console below the console. Open the console. Cut in and down the console over the front console. With the front console you will see the front panel console and take down the left edge of the console. Cut the console up in the right of front panel panel to place the front console and the console into the front panel console down from the right end of the front panel console into the left end of the front panel. Open the console console. Cut down down to the end of the console panel. Cut up to the front console console. Move the end of the console on the front to the front console console. In: Cut a hole between the end and the console. Cut the front panel into the front console to open the console. Cut the left end console up to the front console. Moving down: Slide the left end of the front console. Cut on the right end to the door to the console. Cut the left end console and place the front end console out on the left end. Cut up up the console down to the end of the console on the door to the right end of the console with the front panel. Cut the console’s console down to the left end. Cut up from the console and the console to the door. Take off the front panel with the front panel back down into the front panel. Moving up: Cut the front panel down to the right end, remove the front panel to the front panel. Cut down to the right end of the console and remove the lid from the console. Cut in the front console and remove the front panel back into the console to slide down to the console. Cut over the front panel on the front console. Cut down into the middle and right end to the console. Cut down to the front end of the front console console. Cut the left end on the edge of the front console console. Move the console to the front console. Cut in the right end and left end of the console and remove the top of the front console. Cut the left panel back in the front panel. Cut the back up to the right edge of the front panel console up to the top. Cut out the right panel and up the front to the top and front of the console. Cut the right end of the console and place the console out in the console. Cut down into the left panel panel on the front panel panel. Reach the left panel panel to the front of the console with the console on the right side and into the front panel. Cut the back of the right panel panel on the right side of the console. Reach up to the end of the front panel. Roll down to the left panel panel on the left side of the console. Cut it over to the right end side of the front panel. Roll out of the front end and move up with the right end to the right of the console. Cut in the right end of the console on the right end of the console. Remove the front panel from the console. Roll to the left end. Moving down now into the front door with the console for the front door. Cut up the right end of the door. Cut down down the console and cover. Moving down: Cut the right end of the front end of the console. Cut to the left end on the front of the console. Cut to the right end of the left end of the console. Cut up the bottom and left end cut down the right end of the console. Coach to down the right end of the console. Cut down through the right end. Cut the console down out in the front panel. Cut the left<|endoftext|>
|
| 2 |
+
|
| 3 |
+
---
|
| 4 |
+
|
| 5 |
+
<|endoftext|>, that you played the game once, but you quit the game, that you cannot just continue to play it. I see the problem. You cannot play the game, that you cannot play on your own after the game. 2. What do I tell you? 4. Tell me this is the name of the game. But you finish the game. I don't know if you quit the game. 2. Do I require you to play as you want? If the player wins the game, you can play the game. Then, if you stop playing the game, you can play games. Let's play games. When you finish the game and you start playing, you can play it as you are playing, but you just cannot play it. 1. You cannot play the game 3. You cannot play the game, cannot play the game. 3. You can play the game, if you want you can not play the game. 4. I ask you to play the game as you want. 5. You will need to go to school 5. You must first find a way to play with the game, you have a way to play the game. Here, you cannot play: You cannot play, you cannot play games He plays game after game You cannot play the game. You play games game by game You will play games, but I cannot play games! I have a game You cannot play a game... No I have a game You don't play a game! A game! No game No game, I cannot play... But you don't play the game For a game But I never finish the game No. You cannot take control of the game You say, "Oh God, let me play!" If you don't play with the game... You must get paid for playing the game! Yes But you must get paid for playing the game, while you are playing the game! No. Yes! But you cannot stop playing the game. By now, you have full control of the game. No, you have to have full control of the game while I play the game. No, I do. Play the game. It is not, you have to do so. Take notes. 1. Do you play the games? 2. "Yes" Or do you have the game next to you? You are not tied to the game, but I do play a few games, you know you cannot finish the game. I can't finish the game. I cannot end the game. I didn't pay you to play the game. 1. "No" You are required to save the game, record it before you do it. 2. You know: You cannot save the game, you will play the game again. You will not save the game. You cannot finish the game. 2. 1. "Yes I Play" 2. "Yes" That is the game, you know you can't play. 3. "Yes I Play!" Don't start playing the game while you play. When you play, you know you will be able to play the game. 4. "Yes I Play!" You can play again when you play, but finish the game after the game is played. 2. 2. "Hhaha!" Don't try to tell you to play the game. Instead, I will play with the game. 3. "You'll play it?" I will play the game, you know how to play it. 4. "I know?" I can't tell you if not to play the game, but when you know it, I will tell you what you know. 6. "I Didn't Know" When you know, you know, you can't really tell me. You will make a promise to tell me. 1. Yes. 2. "But I know." I can't tell any of you what I tell you don't know. I will tell you how to play the game. I do that until you know, yes. I can't tell you what to do until something else. 3. "I know." But I can't tell you you don't know the game. 4. "Haha!" You know,<|endoftext|>
|
| 6 |
+
|
| 7 |
+
---
|
| 8 |
+
|
| 9 |
+
<|endoftext|> weapon weapon weapon weapon weapon weapon A weapon weapon weapon weapon At the end of the game, you can use weapon weapon weapon weapon weapon or weapon weapon weapon weapon weapon to the weapon. At the end of the game, weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon or the weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon. A weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon to use weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon player can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon can be used to weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. A weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon player can use weapon weapon to the player. weapon player can be weapon weapon weapon weapon when the player has weapon weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon to the weapon. weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. You can use weapon weapon weapon weapon if you want to use weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can choose to weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon You can use weapon weapon weapon weapon weapon weapon when the player uses weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon. weapon can be used weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon is a weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon to use with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon. You can use a weapon weapon weapon weapon weapon weapon and a weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player uses weapon weapon to use the weapon weapon weapon weapon weapon weapon weapon when the player can use weapon weapon to use weapon weapon weapon with weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon with weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon the player can use weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon if the player does not use weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon the player can get to weapon weapon weapon weapon<|endoftext|>
|
| 10 |
+
|
| 11 |
+
---
|
| 12 |
+
|
| 13 |
+
weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon You can control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon of the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon weapon weapon can control weapon weapon weapon in the weapon weapon weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon You can control weapon weapon from the weapon weapon weapon and weapon weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon. you can use weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you control weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon can control the weapon weapon weapon weapon weapon weapon weapon weapon or the weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon in the weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control weapon weapon weapon of the weapon weapon weapon in the weapon weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control the weapon weapon. you can control the weapon weapon in weapon weapon weapon and use the weapon weapon in weapon weapon to control weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon
|
| 14 |
+
|
| 15 |
+
---
|
| 16 |
+
|
| 17 |
+
<|endoftext|> . . . . the flank, . 2. the apex of the flank, . . 1. 1. . . .2. . . . of the flank, . . the apex of the flank,. of the flank, . . . . . . . . of the flank, . . . . of the flank, . 2. . . . . apex of the flank, apex of the flank, . . 3. . . apex of the flank. the apex of the flank, . 1. . . . . 1. 2. . . . 3.. 3. 3. . 4. . 4. 2. . . . 1. 2. . 2. 1. . 3. . . . 1. . 2. . of the flank, of the flank, . . 2. . 2. 3. 2. . the apex of the flank, apexof the flank . . . 2.. 3. . . 4. 4. 4. 4. the apex of the flank . . 1. 1. 2. of the flank, . 1. 2. . . 3. . 4. . . 4. 4. . . . the flank, . 1. . 2. . . . of the flank, . . . 2. . 1. . 2. . 4. . 3. 4. . . of the flank, . . . . of the flank, . 1. 1. 2. . 1. . . 2. . . 1. . . 2. . 2. 2. 1. . . . 4. 4. 5. . . . . 2. 3. 2. 1. 2. 1. . . 4. 4. 5. . 3. . the apex of the flank, . 2. . 2. . of the flank . . 2. 1. 2. . 3. 2. 3. 3. 4. 4. 3. 4. . . of the apex of the flank, of the apex of the flank, . 2. 1. . 2. 1. . 1. . 2. . 2. . 3. 4. 4. 3. 2. . . . . 4. 4. . . . . 1. 1. 1. 2. . 2. 3. 4. 3. . 4. 5. . 4. . 3. 1. 3. . . <|endoftext|>
|
| 18 |
+
|
| 19 |
+
---
|
| 20 |
+
|
| 21 |
+
<|endoftext|>. It is going to the world. ... It is going to the world. And so we can find it to the heart. Because we can find it. And we'll find it to the world with door. And let's find it to the heart. And we can find it. From door, we can find it. We can find the door. So... ... There's the door. The door is door. It's a door door. So the door, door to the world. The door is door to the world. The door. The door is part of the world. It cuts into the world. It shows the world. It tells the world. The door door It opens the door door. The door door opens a door door. The door closes a door. For the door door door. It opens a door. The door door opens a door. The door closes the door. The door closes door. The door, at the door. The door closes the door. The door closes the door. Now... The door door opens the door. And the door opens door door door. But door closes the door. It closes the door. And door closes the door. As the door closes. Now... The door door opens. And the door door opens. The door closes the door, the door. The door is door closing the door. The door closes the door. Now... We look at the door. The door. "The door." Then the door closes. The door closes to the door. The door closes door. Inside. The door In door... The door closes to the door in door. The door closes the door. The door. The door closes the door of the door. The door is the door. It opens the door through the door. The door closes to the door. The door closes. The door closes. The door closes the door closes. The door closes, the door closes. It is door in the door. It's the door. The door. The door to the door. That's the door. The door is the door. But the door to door. There's a door. That's the door. That's the door to door door. And when the door opens the door closes. That's the door. ... The door closes. He stops. The door opens. We can't see the door. There's a door on the door. We... The door goes to the door. When the door opens, the door closes. The door to door. The door closes to the door. The door door closes to the door. That's the door. The door. That's the door. It's the door door. They would say door didn't open a door. I know the door. But know it. And the door in the door is door. We didn't know a door to door. The door closes. We get outside. The door... The door opens. He looks at door. He stops. He stops. "I know." He goes to the door door. He doesn't know door. Here's door... The door closes the door in the door. The door initiates the door. The door initiates the door. The door is the door. No, it's door. "It's door!" The door door. The door doesn't open door. We can't open door. No, no. We do open door. To the door in the door. The door opens. It opens the door. It door open the door in the door door. "The door?" On door door, door door. He looks at the door. The door. From the door. The door. The door to door. In door.<|endoftext|>
|
| 22 |
+
|
| 23 |
+
---
|
| 24 |
+
|
| 25 |
+
<|endoftext|> - Aim to target - Aim to target - Aim target - Aim to target - Aim target - Aim to target - Aim target! - Aim to the target - Aim target! - - Aim target - Aim to target - Aim to target - Aim to the target! - target target! - Aim target - Aim target! - Aim target - Aim target - Aim target - aim - aim - Aim target - Aim target! - Aim target - - aim - - aim to target - aim target - Aim to target! - aim! - Aim to target! - Aim to target - aim target - aim - - - Aim target - - Aim target - Aim target! - Aim target! - Aim target! - - Aim target! - Aim to the target - aim target - Aim target - Aim target! - Aim target - aim - Aim target! - aim - Aim target - Aim to target - Aim target - - Aim! - Aim to target! - aim - Aim to target - aim - Aim target - - Aim to the target target - aim target - Aim target - Aim target - Aim target - - - Aim target! - Aim to target - Aim target - - Aim to target - Aim to target the target - Aim target - Aim target - Aim target! - Aim target! - Aim target - Aim to target - Aim to the target - aim target - aim - Aim to target - Aim to target - aim target - aim target - - aim to target - aim target - Aim to the target - aim to target - Aim to the target target - aim - aim - Aim target - Aim to target target - aim - - - Aim to target - Aim aim to target - Aim aim to target - aim target - Aim target - - - Aim to target - Aim to target - aim target - aim target - aim target - aim target - Aim to target target - aim to target - - aim - Aim to target - aim target - aim to target - aim target - Aim to target - Aim to target - aim target - Aim to target - - target - Aim to target - aim target - - - Aim target - - Aim to target - Aim to target - aim target - Aim to target - aim - aim - Aim to target - aim target - Aim to target - Aim to target - aim target - aim target - aim - aim - - Aim target - Aim to target target - aim target - aim - Aim to target - aim target - - Aim - aim - aim - aim target - aim target - aim target - Aim to the target - target target - aim target - - Aim to target - aim target - aim target - aim - aim - Aim to target - aim target - target target - Aim to target - Aim to the target range - aim - aim - aim target - - Aim target - target target - aim to target - - aim - aim target - - Aim target - target - Aim target - Aim to target - aim target - aim target - Aim target - aim to target - aim to target - aim target - aim target - aim target <|endoftext|>
|
| 26 |
+
|
| 27 |
+
---
|
| 28 |
+
|
| 29 |
+
<|endoftext|> of his hands, to the wolence of his ears, the feet of the eyes, to the sockets of his eyes, the palms of his fingers, to the chords of wind, the mountains of the mountains, and the mountains of the earth, to his grandmothers, tongues, to the movements of his feet, and the ringing of his tongues, the footsteps, whispers of his voices, the words of fire, the words of blood, to the water, the words of his brothers, his relatives, the relatives, and to his father, his granddaughter, the word of his bedmates, the word of his son, and the word, to the church, and the name of the forefathers, and the word of father, and the son of the mother, the son of the son, his father, and to his son and daughters, his father, and to the grandest, his son, his father, the nephew, and the son of his cousin, and his daughter, and the name of the titents, and to the word of the titents, and the word of the Father and daughters, nor to the clergy, nor to the Catholics; nor to those of the Church, nor to those in church, nor to their wives, nor to the ministers of the church, nor to those of the church, nor to the Catholics, nor to the ministry of the church, nor to the church of the ordination, nor to the church of the believers, nor to the prayers of the believers, nor to the Protestants, nor to believers, nor to the clergy, nor to the Catholics of the church, nor to the prayers of the Protestants, nor to the prayers of the clergy of the Catholics, nor the prayers of the titents, nor, the prayers of the believers, nor the worship of men, nor to the confession of the faith, nor to the ministry of the churches, the ministry of Catholics and children, nor to the ministry of laity, neither to the confession of Christ, nor the confession of Christ, nor to the doctrine, nor to doctrine, nor the worship of the titents, nor the doctrine of God, nor to our titans, nor, to the doctrine and worship of Christ and his disciples. But to doctrine, doctrine, and the laity, and the worship of Christ, and to doctrine, doctrine, and to doctrine, and to doctrine, and our doctrine, the blessings of God, our titans, and all our believers; and all our believers, and all our voices, and all our voices, the servants of God, and all our daughters, and the daughters of Christ, and our tithes, our grandmothers, the daughters, the sons, the daughters, the sons and sons, the sons, the daughters, our sons, and our sons and daughtersons; and all our sons, the sons, our daughters, our sons, daughters, our daughters, to us the fathers, and the sons, the sons, our sons, the daughters, the mothers and relatives, the daughters, the descendents, and our sons, our daughters, husbands and relatives, our sons, the sons, the daughters, the sons, relatives, relatives, relatives, relatives, believers, traitors, believers, believers, believers, and believers, the worship of God, the servants, our laymen, servants and witnesses; neither to us the sons, and our children, the sons, neither to us the sons, and our daughters, our daughters. Our relatives, our daughters, our relatives, our wives, our wives, the sons of relatives, our sons, and our daughters. For in the Church of the church, we proclaim, our Christ, God the Church of Christ, our Father; but, we neither, nor bishops, nor believers, nor bishops, nor saints, nor churches, nor churches, nor bishops; nor, we do not, to churches nor bishops, nor ministers, nor churches, nor pews; neither, nor to Protestants; nor neither to Protestants; nor to Protestants nor nor neither to all of us Protestants; nor nor we say neither to our nor to say churches, or say neither to churches; nor to say our churches. But to us we say nor do we say that it is said; neither say nor does we say it said; but we say neither nor do we say that it is said. No, neither to us, and to Protestants, our clergy, nor to our followers, to our relatives, but to us titers, to our tits, to our grandmothers, to our relatives, to our grandmothers, our saints, our confers, our confers, our ministers, our ministers, our titents, to our bishops, to our elders, to our titents, our secretaries, our secretaries, our judges, to our ministers, our sisters, our relatives, our relatives, our vocations, to our Catholics, Protestants, our parters, to our<|endoftext|>
|
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260517/tpow2_step190k_lm1b_normal_steps128_c256_t1p3_n8/run.log
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[decode] max_len=1024 generated=2/8
|
| 2 |
+
[decode] max_len=1024 generated=4/8
|
| 3 |
+
[decode] max_len=1024 generated=6/8
|
| 4 |
+
[decode] max_len=1024 generated=8/8
|
| 5 |
+
[
|
| 6 |
+
{
|
| 7 |
+
"checkpoint": "runs/lta_owt_gpt2cached_len1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_tpow2_nanogpt_tf32_ddit768x12_gbs512_8gpu_1m_20260515_003246/latest.pt",
|
| 8 |
+
"ckpt_step": 190000,
|
| 9 |
+
"max_len": 1024,
|
| 10 |
+
"decode_rule": "dual_line_resample",
|
| 11 |
+
"support_power": 1.0,
|
| 12 |
+
"semantic_power": 1.0,
|
| 13 |
+
"steps": 128,
|
| 14 |
+
"c_min": 1.0,
|
| 15 |
+
"c_max": 256.0,
|
| 16 |
+
"model_t_mode": "post",
|
| 17 |
+
"time_schedule": "uniform",
|
| 18 |
+
"time_logit_mean": -1.5,
|
| 19 |
+
"time_logit_std": 0.8,
|
| 20 |
+
"time_power": 2.0,
|
| 21 |
+
"input_noise_scale": 0.0,
|
| 22 |
+
"input_noise_until": 1.0,
|
| 23 |
+
"input_noise_dirichlet_concentration": 1.0,
|
| 24 |
+
"endpoint_softening": "none",
|
| 25 |
+
"endpoint_soft_power": 2.0,
|
| 26 |
+
"endpoint_soft_min_conf": 0.0,
|
| 27 |
+
"endpoint_soft_max_conf": 1.0,
|
| 28 |
+
"final_from": "state",
|
| 29 |
+
"final_decode": "argmax",
|
| 30 |
+
"final_sample_temp": 1.0,
|
| 31 |
+
"final_top_k": 0,
|
| 32 |
+
"final_top_p": 1.0,
|
| 33 |
+
"early_temp": 1.3,
|
| 34 |
+
"late_temp": 1.3,
|
| 35 |
+
"temp_end": 1.0,
|
| 36 |
+
"temp_power": 1.0,
|
| 37 |
+
"pos_extend": "repeat",
|
| 38 |
+
"fixed_first_token_id": null,
|
| 39 |
+
"fixed_first_token_text": "",
|
| 40 |
+
"fixed_first_initial_argmax": false,
|
| 41 |
+
"use_ema": false,
|
| 42 |
+
"n_samples": 8,
|
| 43 |
+
"sample_entropy": 2.321692294119903,
|
| 44 |
+
"unique_tokens": 382,
|
| 45 |
+
"token_count": 8192,
|
| 46 |
+
"distinct_1": 0.046630859375,
|
| 47 |
+
"distinct_2": 0.15273704789833822,
|
| 48 |
+
"top_token_mass": 0.203125,
|
| 49 |
+
"texts_preview": [
|
| 50 |
+
"<|endoftext|> on the front console console. Cut in the top of the lid on the right bottom panel of the front console. Cut down down from the front panel and it’s just as up from the bottom of console to the bottom of the panel. Take up the left console panel down to the front console. The front panel on the back of the left console console. Cut the front panel to the left end of the left console panel on the front console. With the left end of the front console you will see the button to open up the front panel. Cut down to the right of the front panel to remove the lid from the console into the console. The door to open the front console. Cut the console on to the front console with the front console on the right console console. In the front console you can see this slide down from the front console. Move the console to the left. Remove the left panel from the console panel. Once the console has moved to the front console on the front console you’ll see a cross through the right end of the left console console below the console. Open the console. Cut in and down the console over the front console. With the front console you will see the front panel console and take down the left edge of the console. Cut the console up in the right of front panel panel to place the front console and the console into the front panel console down from the right end of the front panel console into the left end of the front panel. Open the console console. Cut down down to the end of the console panel. Cut up to the front console console. Move the end of the console on the front to the front console console. In: Cut a hole between the end and the console. Cut the front panel into the front console to open the console. Cut the left end console up to the front console. Moving down: Slide the left end of the front console. Cut on the right end to the door to the console. Cut the left end console and place the front end console out on the left end. Cut up up the console down to the end of the console on the door to the right end of the console with the front panel. Cut the console’s console down to the left end. Cut up from the console and the console to the door. Take off the front panel with the front panel back down into the front panel. Moving up: Cut the front panel down to the right end, remove the front panel to the front panel. Cut down to the right end of the console and remove the lid from the console. Cut in the front console and remove the front panel back into the console to slide down to the console. Cut over the front panel on the front console. Cut down into the middle and right end to the console. Cut down to the front end of the front console console. Cut the left end on the edge of the front console console. Move the console to the front console. Cut in the right end and left end of the console and remove the top of the front console. Cut the left panel back in the front panel. Cut the back up to the right edge of the front panel console up to the top. Cut out the right panel and up the front to the top and front of the console. Cut the right end of the console and place the console out in the console. Cut down into the left panel panel on the front panel panel. Reach the left panel panel to the front of the console with the console on the right side and into the front panel. Cut the back of the right panel panel on the right side of the console. Reach up to the end of the front panel. Roll down to the left panel panel on the left side of the console. Cut it over to the right end side of the front panel. Roll out of the front end and move up with the right end to the right of the console. Cut in the right end of the console on the right end of the console. Remove the front panel from the console. Roll to the left end. Moving down now into the front door with the console for the front door. Cut up the right end of the door. Cut down down the console and cover. Moving down: Cut the right end of the front end of the console. Cut to the left end on the front of the console. Cut to the right end of the left end of the console. Cut up the bottom and left end cut down the right end of the console. Coach to down the right end of the console. Cut down through the right end. Cut the console down out in the front panel. Cut the left<|endoftext|>",
|
| 51 |
+
"<|endoftext|>, that you played the game once, but you quit the game, that you cannot just continue to play it. I see the problem. You cannot play the game, that you cannot play on your own after the game. 2. What do I tell you? 4. Tell me this is the name of the game. But you finish the game. I don't know if you quit the game. 2. Do I require you to play as you want? If the player wins the game, you can play the game. Then, if you stop playing the game, you can play games. Let's play games. When you finish the game and you start playing, you can play it as you are playing, but you just cannot play it. 1. You cannot play the game 3. You cannot play the game, cannot play the game. 3. You can play the game, if you want you can not play the game. 4. I ask you to play the game as you want. 5. You will need to go to school 5. You must first find a way to play with the game, you have a way to play the game. Here, you cannot play: You cannot play, you cannot play games He plays game after game You cannot play the game. You play games game by game You will play games, but I cannot play games! I have a game You cannot play a game... No I have a game You don't play a game! A game! No game No game, I cannot play... But you don't play the game For a game But I never finish the game No. You cannot take control of the game You say, \"Oh God, let me play!\" If you don't play with the game... You must get paid for playing the game! Yes But you must get paid for playing the game, while you are playing the game! No. Yes! But you cannot stop playing the game. By now, you have full control of the game. No, you have to have full control of the game while I play the game. No, I do. Play the game. It is not, you have to do so. Take notes. 1. Do you play the games? 2. \"Yes\" Or do you have the game next to you? You are not tied to the game, but I do play a few games, you know you cannot finish the game. I can't finish the game. I cannot end the game. I didn't pay you to play the game. 1. \"No\" You are required to save the game, record it before you do it. 2. You know: You cannot save the game, you will play the game again. You will not save the game. You cannot finish the game. 2. 1. \"Yes I Play\" 2. \"Yes\" That is the game, you know you can't play. 3. \"Yes I Play!\" Don't start playing the game while you play. When you play, you know you will be able to play the game. 4. \"Yes I Play!\" You can play again when you play, but finish the game after the game is played. 2. 2. \"Hhaha!\" Don't try to tell you to play the game. Instead, I will play with the game. 3. \"You'll play it?\" I will play the game, you know how to play it. 4. \"I know?\" I can't tell you if not to play the game, but when you know it, I will tell you what you know. 6. \"I Didn't Know\" When you know, you know, you can't really tell me. You will make a promise to tell me. 1. Yes. 2. \"But I know.\" I can't tell any of you what I tell you don't know. I will tell you how to play the game. I do that until you know, yes. I can't tell you what to do until something else. 3. \"I know.\" But I can't tell you you don't know the game. 4. \"Haha!\" You know,<|endoftext|>",
|
| 52 |
+
"<|endoftext|> weapon weapon weapon weapon weapon weapon A weapon weapon weapon weapon At the end of the game, you can use weapon weapon weapon weapon weapon or weapon weapon weapon weapon weapon to the weapon. At the end of the game, weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon or the weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon. A weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon to use weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon player can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon can be used to weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. A weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon player can use weapon weapon to the player. weapon player can be weapon weapon weapon weapon when the player has weapon weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon to the weapon. weapon weapon weapon weapon weapon player can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. You can use weapon weapon weapon weapon if you want to use weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can choose to weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon You can use weapon weapon weapon weapon weapon weapon when the player uses weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon. weapon can be used weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon is a weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can use weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon to use with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon. You can use a weapon weapon weapon weapon weapon weapon and a weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player uses weapon weapon to use the weapon weapon weapon weapon weapon weapon weapon when the player can use weapon weapon to use weapon weapon weapon with weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon with weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon the player can use weapon weapon weapon weapon with weapon weapon weapon weapon weapon weapon weapon weapon weapon if the player does not use weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon. weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon when the player can weapon weapon weapon weapon the player can get to weapon weapon weapon weapon<|endoftext|>",
|
| 53 |
+
"weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon You can control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon of the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon with the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon weapon weapon can control weapon weapon weapon in the weapon weapon weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon You can control weapon weapon from the weapon weapon weapon and weapon weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon. you can use weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon you control weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon can control the weapon weapon weapon weapon weapon weapon weapon weapon or the weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon in the weapon weapon. you can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control weapon weapon weapon of the weapon weapon weapon in the weapon weapon weapon weapon weapon can control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon control the weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon and control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control the weapon weapon. you can control the weapon weapon in weapon weapon weapon and use the weapon weapon in weapon weapon to control weapon weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon to control weapon weapon weapon to control weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon weapon"
|
| 54 |
+
],
|
| 55 |
+
"gen_ppl": 5.455538024310792,
|
| 56 |
+
"gen_nll": 1.6966312439926388,
|
| 57 |
+
"gen_tokens": 6665
|
| 58 |
+
}
|
| 59 |
+
]
|
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps160_c192_temps.log
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[ckpt] runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt step=52444
|
| 2 |
+
[decode-base] n=8 max_len=1024 steps=160 model_t=flow
|
| 3 |
+
[decode-time] schedule=linear s=[0.0,0.25] gumbel=(2.2,0.8) force_final=True t0=0.000000 t_mid=0.500000 t_end=1.000000 dt_mean=0.006250 dt_max=0.006250
|
| 4 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 5 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 6 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 7 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 8 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 9 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 10 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 11 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 12 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 13 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 14 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 192.0, "target_prob": 1.0, "endpoint_temp": 1.15, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 16.32093101462812, "nll_per_token": 2.7924483953737744, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 18.08571163199527, "nll_per_token": 2.8951222139246324, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 3.935435376875119, "unique_tokens": 852, "token_count": 8192, "distinct_1": 0.10400390625, "distinct_2": 0.3737781036168133, "top_token_mass": 0.05615234375}}
|
| 15 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 192.0, "target_prob": 1.0, "endpoint_temp": 1.18, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 22.281282142849616, "nll_per_token": 3.103746960209865, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 23.824483639053597, "nll_per_token": 3.1707137762331494, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.118388439717505, "unique_tokens": 963, "token_count": 8192, "distinct_1": 0.1175537109375, "distinct_2": 0.44782502443792765, "top_token_mass": 0.0806884765625}}
|
| 16 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 192.0, "target_prob": 1.0, "endpoint_temp": 1.2, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 19.57294977988684, "nll_per_token": 2.974148499731924, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 22.138237456577077, "nll_per_token": 3.097306315104167, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.222889944442148, "unique_tokens": 876, "token_count": 8192, "distinct_1": 0.10693359375, "distinct_2": 0.42143206256109483, "top_token_mass": 0.0614013671875}}
|
| 17 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 192.0, "target_prob": 1.0, "endpoint_temp": 1.22, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 27.01011733558444, "nll_per_token": 3.2962115119485293, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 29.95265211473401, "nll_per_token": 3.3996178720511643, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.102241546957736, "unique_tokens": 925, "token_count": 8192, "distinct_1": 0.1129150390625, "distinct_2": 0.4298631476050831, "top_token_mass": 0.0738525390625}}
|
| 18 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 192.0, "target_prob": 1.0, "endpoint_temp": 1.25, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 61.915451012937574, "nll_per_token": 4.125769761029412, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 72.47572757754818, "nll_per_token": 4.283251713771446, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.8802438288573855, "unique_tokens": 1092, "token_count": 8192, "distinct_1": 0.13330078125, "distinct_2": 0.5613391984359726, "top_token_mass": 0.0401611328125}}
|
| 19 |
+
[done] docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/steps160_c192_temps.jsonl
|
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps160_c256_temps.log
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[ckpt] runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt step=52444
|
| 2 |
+
[decode-base] n=8 max_len=1024 steps=160 model_t=flow
|
| 3 |
+
[decode-time] schedule=linear s=[0.0,0.25] gumbel=(2.2,0.8) force_final=True t0=0.000000 t_mid=0.500000 t_end=1.000000 dt_mean=0.006250 dt_max=0.006250
|
| 4 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 5 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 6 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 7 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 8 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 9 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 10 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 11 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 12 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 13 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 14 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 256.0, "target_prob": 1.0, "endpoint_temp": 1.15, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 14.491373286758098, "nll_per_token": 2.6735535266352635, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 16.146975815344685, "nll_per_token": 2.7817327761182598, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 3.883886978537484, "unique_tokens": 885, "token_count": 8192, "distinct_1": 0.1080322265625, "distinct_2": 0.40579178885630496, "top_token_mass": 0.145263671875}}
|
| 15 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 256.0, "target_prob": 1.0, "endpoint_temp": 1.18, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 14.320127887989397, "nll_per_token": 2.6616660922181374, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 15.51624578189119, "nll_per_token": 2.7418875899969364, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 3.8391281316946864, "unique_tokens": 875, "token_count": 8192, "distinct_1": 0.1068115234375, "distinct_2": 0.3812316715542522, "top_token_mass": 0.1175537109375}}
|
| 16 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 256.0, "target_prob": 1.0, "endpoint_temp": 1.2, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 18.24573769513893, "nll_per_token": 2.9039315017999385, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 19.6871352509057, "nll_per_token": 2.979965389476103, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.158735382486451, "unique_tokens": 951, "token_count": 8192, "distinct_1": 0.1160888671875, "distinct_2": 0.43499511241446726, "top_token_mass": 0.0784912109375}}
|
| 17 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 256.0, "target_prob": 1.0, "endpoint_temp": 1.22, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 21.923303209036547, "nll_per_token": 3.0875501445695464, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 24.335406539673976, "nll_per_token": 3.1919323491115197, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.392752845356918, "unique_tokens": 1025, "token_count": 8192, "distinct_1": 0.1251220703125, "distinct_2": 0.4810606060606061, "top_token_mass": 0.068115234375}}
|
| 18 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 160, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.00625, 0.0125, 0.01875, 0.025, 0.03125, 0.0375, 0.04375, 0.05, 0.05625, 0.0625, 0.06875, 0.075, 0.08125, 0.0875, 0.09375, 0.1, 0.10625, 0.1125, 0.11875, 0.125, 0.13125, 0.1375, 0.14375, 0.15, 0.15625, 0.1625, 0.16875, 0.175, 0.18125, 0.1875, 0.19375, 0.2, 0.20625, 0.2125, 0.21875, 0.225, 0.23125, 0.2375, 0.24375, 0.25, 0.25625, 0.2625, 0.26875, 0.275, 0.28125, 0.2875, 0.29375, 0.3, 0.30625, 0.3125, 0.31875, 0.325, 0.33125, 0.3375, 0.34375, 0.35, 0.35625, 0.3625, 0.36875, 0.375, 0.38125, 0.3875, 0.39375, 0.4, 0.40625, 0.4125, 0.41875, 0.425, 0.43125, 0.4375, 0.44375, 0.45, 0.45625, 0.4625, 0.46875, 0.475, 0.48125, 0.4875, 0.49375, 0.5, 0.50625, 0.5125, 0.51875, 0.525, 0.53125, 0.5375, 0.54375, 0.55, 0.55625, 0.5625, 0.56875, 0.575, 0.58125, 0.5875, 0.59375, 0.6, 0.60625, 0.6125, 0.61875, 0.625, 0.63125, 0.6375, 0.64375, 0.65, 0.65625, 0.6625, 0.66875, 0.675, 0.68125, 0.6875, 0.69375, 0.7, 0.70625, 0.7125, 0.71875, 0.725, 0.73125, 0.7375, 0.74375, 0.75, 0.75625, 0.7625, 0.76875, 0.775, 0.78125, 0.7875, 0.79375, 0.8, 0.80625, 0.8125, 0.81875, 0.825, 0.83125, 0.8375, 0.84375, 0.85, 0.85625, 0.8625, 0.86875, 0.875, 0.88125, 0.8875, 0.89375, 0.9, 0.90625, 0.9125, 0.91875, 0.925, 0.93125, 0.9375, 0.94375, 0.95, 0.95625, 0.9625, 0.96875, 0.975, 0.98125, 0.9875, 0.99375, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 256.0, "target_prob": 1.0, "endpoint_temp": 1.25, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 29.124005439095203, "nll_per_token": 3.3715627632889094, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 31.872494721465475, "nll_per_token": 3.461743403416054, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.382249063383401, "unique_tokens": 1027, "token_count": 8192, "distinct_1": 0.1253662109375, "distinct_2": 0.4954789833822092, "top_token_mass": 0.07080078125}}
|
| 19 |
+
[done] docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/steps160_c256_temps.jsonl
|
LTA_openwebtext_dualt/docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/logs/steps96_c128_temps.log
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[ckpt] runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt step=52444
|
| 2 |
+
[decode-base] n=8 max_len=1024 steps=96 model_t=flow
|
| 3 |
+
[decode-time] schedule=linear s=[0.0,0.25] gumbel=(2.2,0.8) force_final=True t0=0.000000 t_mid=0.500000 t_end=1.000000 dt_mean=0.010417 dt_max=0.010417
|
| 4 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 5 |
+
[decode] temp=1.15 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 6 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 7 |
+
[decode] temp=1.18 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 8 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 9 |
+
[decode] temp=1.20 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 10 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 11 |
+
[decode] temp=1.22 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 12 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 4/8
|
| 13 |
+
[decode] temp=1.25 final=state rule=dual_line_resample support=1 semantic=1 anchor=onehot cfg=0/1@0:uniform decode_freq_penalty=0/0/0-1^1 final_sample=argmax/1/k64/p0.95 freq_penalty=0/0/0 start_t=0 start_init=noise time_path=0.0000->1.0000 generated 8/8
|
| 14 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 96, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.010416666666666666, 0.020833333333333332, 0.03125, 0.041666666666666664, 0.052083333333333336, 0.0625, 0.07291666666666667, 0.08333333333333333, 0.09375, 0.10416666666666667, 0.11458333333333333, 0.125, 0.13541666666666666, 0.14583333333333334, 0.15625, 0.16666666666666666, 0.17708333333333334, 0.1875, 0.19791666666666666, 0.20833333333333334, 0.21875, 0.22916666666666666, 0.23958333333333334, 0.25, 0.2604166666666667, 0.2708333333333333, 0.28125, 0.2916666666666667, 0.3020833333333333, 0.3125, 0.3229166666666667, 0.3333333333333333, 0.34375, 0.3541666666666667, 0.3645833333333333, 0.375, 0.3854166666666667, 0.3958333333333333, 0.40625, 0.4166666666666667, 0.4270833333333333, 0.4375, 0.4479166666666667, 0.4583333333333333, 0.46875, 0.4791666666666667, 0.4895833333333333, 0.5, 0.5104166666666666, 0.5208333333333334, 0.53125, 0.5416666666666666, 0.5520833333333334, 0.5625, 0.5729166666666666, 0.5833333333333334, 0.59375, 0.6041666666666666, 0.6145833333333334, 0.625, 0.6354166666666666, 0.6458333333333334, 0.65625, 0.6666666666666666, 0.6770833333333334, 0.6875, 0.6979166666666666, 0.7083333333333334, 0.71875, 0.7291666666666666, 0.7395833333333334, 0.75, 0.7604166666666666, 0.7708333333333334, 0.78125, 0.7916666666666666, 0.8020833333333334, 0.8125, 0.8229166666666666, 0.8333333333333334, 0.84375, 0.8541666666666666, 0.8645833333333334, 0.875, 0.8854166666666666, 0.8958333333333334, 0.90625, 0.9166666666666666, 0.9270833333333334, 0.9375, 0.9479166666666666, 0.9583333333333334, 0.96875, 0.9791666666666666, 0.9895833333333334, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 128.0, "target_prob": 1.0, "endpoint_temp": 1.15, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 99.95935110810714, "nll_per_token": 4.604763614430147, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 119.30314274312748, "nll_per_token": 4.781667671951593, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.996586378639751, "unique_tokens": 1044, "token_count": 8192, "distinct_1": 0.12744140625, "distinct_2": 0.6276881720430108, "top_token_mass": 0.0421142578125}}
|
| 15 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 96, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.010416666666666666, 0.020833333333333332, 0.03125, 0.041666666666666664, 0.052083333333333336, 0.0625, 0.07291666666666667, 0.08333333333333333, 0.09375, 0.10416666666666667, 0.11458333333333333, 0.125, 0.13541666666666666, 0.14583333333333334, 0.15625, 0.16666666666666666, 0.17708333333333334, 0.1875, 0.19791666666666666, 0.20833333333333334, 0.21875, 0.22916666666666666, 0.23958333333333334, 0.25, 0.2604166666666667, 0.2708333333333333, 0.28125, 0.2916666666666667, 0.3020833333333333, 0.3125, 0.3229166666666667, 0.3333333333333333, 0.34375, 0.3541666666666667, 0.3645833333333333, 0.375, 0.3854166666666667, 0.3958333333333333, 0.40625, 0.4166666666666667, 0.4270833333333333, 0.4375, 0.4479166666666667, 0.4583333333333333, 0.46875, 0.4791666666666667, 0.4895833333333333, 0.5, 0.5104166666666666, 0.5208333333333334, 0.53125, 0.5416666666666666, 0.5520833333333334, 0.5625, 0.5729166666666666, 0.5833333333333334, 0.59375, 0.6041666666666666, 0.6145833333333334, 0.625, 0.6354166666666666, 0.6458333333333334, 0.65625, 0.6666666666666666, 0.6770833333333334, 0.6875, 0.6979166666666666, 0.7083333333333334, 0.71875, 0.7291666666666666, 0.7395833333333334, 0.75, 0.7604166666666666, 0.7708333333333334, 0.78125, 0.7916666666666666, 0.8020833333333334, 0.8125, 0.8229166666666666, 0.8333333333333334, 0.84375, 0.8541666666666666, 0.8645833333333334, 0.875, 0.8854166666666666, 0.8958333333333334, 0.90625, 0.9166666666666666, 0.9270833333333334, 0.9375, 0.9479166666666666, 0.9583333333333334, 0.96875, 0.9791666666666666, 0.9895833333333334, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 128.0, "target_prob": 1.0, "endpoint_temp": 1.18, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 90.08121011802474, "nll_per_token": 4.500711598115809, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 122.37869439442484, "nll_per_token": 4.807120289522059, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.6648811041941025, "unique_tokens": 1020, "token_count": 8192, "distinct_1": 0.12451171875, "distinct_2": 0.5489980449657869, "top_token_mass": 0.04150390625}}
|
| 16 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 96, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.010416666666666666, 0.020833333333333332, 0.03125, 0.041666666666666664, 0.052083333333333336, 0.0625, 0.07291666666666667, 0.08333333333333333, 0.09375, 0.10416666666666667, 0.11458333333333333, 0.125, 0.13541666666666666, 0.14583333333333334, 0.15625, 0.16666666666666666, 0.17708333333333334, 0.1875, 0.19791666666666666, 0.20833333333333334, 0.21875, 0.22916666666666666, 0.23958333333333334, 0.25, 0.2604166666666667, 0.2708333333333333, 0.28125, 0.2916666666666667, 0.3020833333333333, 0.3125, 0.3229166666666667, 0.3333333333333333, 0.34375, 0.3541666666666667, 0.3645833333333333, 0.375, 0.3854166666666667, 0.3958333333333333, 0.40625, 0.4166666666666667, 0.4270833333333333, 0.4375, 0.4479166666666667, 0.4583333333333333, 0.46875, 0.4791666666666667, 0.4895833333333333, 0.5, 0.5104166666666666, 0.5208333333333334, 0.53125, 0.5416666666666666, 0.5520833333333334, 0.5625, 0.5729166666666666, 0.5833333333333334, 0.59375, 0.6041666666666666, 0.6145833333333334, 0.625, 0.6354166666666666, 0.6458333333333334, 0.65625, 0.6666666666666666, 0.6770833333333334, 0.6875, 0.6979166666666666, 0.7083333333333334, 0.71875, 0.7291666666666666, 0.7395833333333334, 0.75, 0.7604166666666666, 0.7708333333333334, 0.78125, 0.7916666666666666, 0.8020833333333334, 0.8125, 0.8229166666666666, 0.8333333333333334, 0.84375, 0.8541666666666666, 0.8645833333333334, 0.875, 0.8854166666666666, 0.8958333333333334, 0.90625, 0.9166666666666666, 0.9270833333333334, 0.9375, 0.9479166666666666, 0.9583333333333334, 0.96875, 0.9791666666666666, 0.9895833333333334, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 128.0, "target_prob": 1.0, "endpoint_temp": 1.2, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 90.11875609025836, "nll_per_token": 4.5011283126531865, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 112.0941662852602, "nll_per_token": 4.7193392884497545, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.689392053520974, "unique_tokens": 1042, "token_count": 8192, "distinct_1": 0.127197265625, "distinct_2": 0.5514418377321603, "top_token_mass": 0.0406494140625}}
|
| 17 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 96, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.010416666666666666, 0.020833333333333332, 0.03125, 0.041666666666666664, 0.052083333333333336, 0.0625, 0.07291666666666667, 0.08333333333333333, 0.09375, 0.10416666666666667, 0.11458333333333333, 0.125, 0.13541666666666666, 0.14583333333333334, 0.15625, 0.16666666666666666, 0.17708333333333334, 0.1875, 0.19791666666666666, 0.20833333333333334, 0.21875, 0.22916666666666666, 0.23958333333333334, 0.25, 0.2604166666666667, 0.2708333333333333, 0.28125, 0.2916666666666667, 0.3020833333333333, 0.3125, 0.3229166666666667, 0.3333333333333333, 0.34375, 0.3541666666666667, 0.3645833333333333, 0.375, 0.3854166666666667, 0.3958333333333333, 0.40625, 0.4166666666666667, 0.4270833333333333, 0.4375, 0.4479166666666667, 0.4583333333333333, 0.46875, 0.4791666666666667, 0.4895833333333333, 0.5, 0.5104166666666666, 0.5208333333333334, 0.53125, 0.5416666666666666, 0.5520833333333334, 0.5625, 0.5729166666666666, 0.5833333333333334, 0.59375, 0.6041666666666666, 0.6145833333333334, 0.625, 0.6354166666666666, 0.6458333333333334, 0.65625, 0.6666666666666666, 0.6770833333333334, 0.6875, 0.6979166666666666, 0.7083333333333334, 0.71875, 0.7291666666666666, 0.7395833333333334, 0.75, 0.7604166666666666, 0.7708333333333334, 0.78125, 0.7916666666666666, 0.8020833333333334, 0.8125, 0.8229166666666666, 0.8333333333333334, 0.84375, 0.8541666666666666, 0.8645833333333334, 0.875, 0.8854166666666666, 0.8958333333333334, 0.90625, 0.9166666666666666, 0.9270833333333334, 0.9375, 0.9479166666666666, 0.9583333333333334, 0.96875, 0.9791666666666666, 0.9895833333333334, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 128.0, "target_prob": 1.0, "endpoint_temp": 1.22, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 146.83992125509792, "nll_per_token": 4.989343022365196, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 193.58726655161965, "nll_per_token": 5.265728400735294, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 5.0127882745166, "unique_tokens": 1077, "token_count": 8192, "distinct_1": 0.1314697265625, "distinct_2": 0.614613880742913, "top_token_mass": 0.033935546875}}
|
| 18 |
+
[summary] {"type": "summary", "checkpoint": "runs/lta_owt_compact_gpt2bpe_v2048_stream1024_fullycoupled_rmsnorm_nobias_adamw_wd0p1_logitnormal_m1p5_s0p8_hardce_mask1p0-1p0_fp32_ddit768x12_gbs512_8gpu_1m_20260517_141027/step_0052444.pt", "step": 52444, "decode": {"steps": 96, "model_t_mode": "flow", "decode_time_schedule": "linear", "decode_s_min_frac": 0.0, "decode_s_max_frac": 0.25, "decode_force_final_t": true, "decode_time_grid": [0.0, 0.010416666666666666, 0.020833333333333332, 0.03125, 0.041666666666666664, 0.052083333333333336, 0.0625, 0.07291666666666667, 0.08333333333333333, 0.09375, 0.10416666666666667, 0.11458333333333333, 0.125, 0.13541666666666666, 0.14583333333333334, 0.15625, 0.16666666666666666, 0.17708333333333334, 0.1875, 0.19791666666666666, 0.20833333333333334, 0.21875, 0.22916666666666666, 0.23958333333333334, 0.25, 0.2604166666666667, 0.2708333333333333, 0.28125, 0.2916666666666667, 0.3020833333333333, 0.3125, 0.3229166666666667, 0.3333333333333333, 0.34375, 0.3541666666666667, 0.3645833333333333, 0.375, 0.3854166666666667, 0.3958333333333333, 0.40625, 0.4166666666666667, 0.4270833333333333, 0.4375, 0.4479166666666667, 0.4583333333333333, 0.46875, 0.4791666666666667, 0.4895833333333333, 0.5, 0.5104166666666666, 0.5208333333333334, 0.53125, 0.5416666666666666, 0.5520833333333334, 0.5625, 0.5729166666666666, 0.5833333333333334, 0.59375, 0.6041666666666666, 0.6145833333333334, 0.625, 0.6354166666666666, 0.6458333333333334, 0.65625, 0.6666666666666666, 0.6770833333333334, 0.6875, 0.6979166666666666, 0.7083333333333334, 0.71875, 0.7291666666666666, 0.7395833333333334, 0.75, 0.7604166666666666, 0.7708333333333334, 0.78125, 0.7916666666666666, 0.8020833333333334, 0.8125, 0.8229166666666666, 0.8333333333333334, 0.84375, 0.8541666666666666, 0.8645833333333334, 0.875, 0.8854166666666666, 0.8958333333333334, 0.90625, 0.9166666666666666, 0.9270833333333334, 0.9375, 0.9479166666666666, 0.9583333333333334, 0.96875, 0.9791666666666666, 0.9895833333333334, 1.0], "decode_rule": "dual_line_resample", "support_power": 1.0, "semantic_power": 1.0, "anchor_mode": "onehot", "cfg_scale": 0.0, "cfg_power": 1.0, "cfg_start": 0.0, "cfg_prior": "uniform", "decode_freq_penalty_alpha": 0.0, "decode_freq_penalty_beta": 0.0, "decode_freq_penalty_floor": 0.0, "decode_freq_penalty_start": 0.0, "decode_freq_penalty_end": 1.0, "decode_freq_penalty_power": 1.0, "start_t": 0.0, "start_init": "noise", "noise_init": "dirichlet", "noise_sigma": -1.0, "dirichlet_concentration": 1.0, "concentration_min": 1.0, "concentration_max": 128.0, "target_prob": 1.0, "endpoint_temp": 1.25, "final_from": "state", "final_sample_mode": "argmax", "final_sample_temp": 1.0, "final_top_k": 64, "final_top_p": 0.95, "final_freq_penalty_alpha": 0.0, "final_freq_penalty_beta": 0.0, "final_freq_penalty_floor": 0.0, "lock_bos": false, "n_samples": 8, "seed": 20260519}, "raw_genppl": {"ppl": 140.7908475613465, "nll_per_token": 4.947275438495711, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "stripped_genppl": {"ppl": 187.84416269089778, "nll_per_token": 5.235612697227328, "tokens": 2040, "kept_samples": 8, "total_samples": 8, "empty_rate": 0.0, "skipped_samples": 0}, "diversity": {"sample_entropy": 4.976983705536679, "unique_tokens": 1065, "token_count": 8192, "distinct_1": 0.1300048828125, "distinct_2": 0.6286656891495601, "top_token_mass": 0.0335693359375}}
|
| 19 |
+
[done] docs/lta_samples/metrics_20260519/owt_compact_v2048_step52k_finesweep_entropy5_ppl30_n8/steps96_c128_temps.jsonl
|
LTA_openwebtext_dualt/logs/ctx1024_sampleds_sweep_4gpu/ctx1024_tradeoff_dual_20260517_225705.log
ADDED
|
@@ -0,0 +1,1307 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[ctx1024-sampleds] start stamp=ctx1024_tradeoff_dual_20260517_225705 len=1024 vocab=2664 out=docs/lta_samples/metrics_20260517/ctx1024_sampleds_sweep_bs512_ode128_ctx1024_tradeoff_dual_20260517_225705
|
| 2 |
+
[ctx1024-sampleds] config=p35_unif0_0p25_outwdm1 run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 p=0.35 mode=sampled_s steps=1 s_dist=uniform s_frac=0.0->0.25 beta=2.0,6.0 outwd=-1 sync_t=1
|
| 3 |
+
[ctx1024-sampleds] train config=p35_unif0_0p25_outwdm1 from=0 to=1000
|
| 4 |
+
[ctx1024-sampleds] eval config=p35_unif0_0p25_outwdm1 step=1000
|
| 5 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=1000 soft=none
|
| 6 |
+
[decode] max_len=1024 generated=64/64
|
| 7 |
+
{
|
| 8 |
+
"num_rows": 1,
|
| 9 |
+
"best_by_run": {
|
| 10 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 11 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 12 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0001000.pt",
|
| 13 |
+
"ckpt_step": 1000,
|
| 14 |
+
"endpoint_softening": "none",
|
| 15 |
+
"decode_rule": "flowmap",
|
| 16 |
+
"steps": 128,
|
| 17 |
+
"time_schedule": "logit_normal",
|
| 18 |
+
"model_t_mode": "post",
|
| 19 |
+
"final_from": "state",
|
| 20 |
+
"n_gen": 64,
|
| 21 |
+
"n_refs": 8,
|
| 22 |
+
"token_acc_mean": 0.039886474609375,
|
| 23 |
+
"token_acc_min": 0.02734375,
|
| 24 |
+
"token_acc_max": 0.0947265625,
|
| 25 |
+
"exact_acc": 0.0,
|
| 26 |
+
"exact_count": 0,
|
| 27 |
+
"exact_ref_coverage": 0.0,
|
| 28 |
+
"exact_ref_count": 0,
|
| 29 |
+
"exact_ref_hits": [],
|
| 30 |
+
"best_ref_idx": [
|
| 31 |
+
3,
|
| 32 |
+
5,
|
| 33 |
+
5,
|
| 34 |
+
5,
|
| 35 |
+
5,
|
| 36 |
+
5,
|
| 37 |
+
2,
|
| 38 |
+
5,
|
| 39 |
+
5,
|
| 40 |
+
5,
|
| 41 |
+
0,
|
| 42 |
+
1,
|
| 43 |
+
0,
|
| 44 |
+
4,
|
| 45 |
+
0,
|
| 46 |
+
5,
|
| 47 |
+
5,
|
| 48 |
+
1,
|
| 49 |
+
0,
|
| 50 |
+
0,
|
| 51 |
+
5,
|
| 52 |
+
5,
|
| 53 |
+
5,
|
| 54 |
+
5,
|
| 55 |
+
0,
|
| 56 |
+
1,
|
| 57 |
+
0,
|
| 58 |
+
5,
|
| 59 |
+
5,
|
| 60 |
+
3,
|
| 61 |
+
5,
|
| 62 |
+
0,
|
| 63 |
+
0,
|
| 64 |
+
5,
|
| 65 |
+
5,
|
| 66 |
+
5,
|
| 67 |
+
5,
|
| 68 |
+
0,
|
| 69 |
+
5,
|
| 70 |
+
5,
|
| 71 |
+
3,
|
| 72 |
+
1,
|
| 73 |
+
1,
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
3,
|
| 77 |
+
5,
|
| 78 |
+
0,
|
| 79 |
+
0,
|
| 80 |
+
5,
|
| 81 |
+
5,
|
| 82 |
+
5,
|
| 83 |
+
0,
|
| 84 |
+
5,
|
| 85 |
+
0,
|
| 86 |
+
3,
|
| 87 |
+
5,
|
| 88 |
+
5,
|
| 89 |
+
0,
|
| 90 |
+
1,
|
| 91 |
+
0,
|
| 92 |
+
5,
|
| 93 |
+
0,
|
| 94 |
+
5
|
| 95 |
+
],
|
| 96 |
+
"best_token_acc": [
|
| 97 |
+
0.0302734375,
|
| 98 |
+
0.03515625,
|
| 99 |
+
0.0595703125,
|
| 100 |
+
0.044921875,
|
| 101 |
+
0.041015625,
|
| 102 |
+
0.0361328125,
|
| 103 |
+
0.0341796875,
|
| 104 |
+
0.0439453125,
|
| 105 |
+
0.0546875,
|
| 106 |
+
0.0400390625,
|
| 107 |
+
0.0322265625,
|
| 108 |
+
0.033203125,
|
| 109 |
+
0.037109375,
|
| 110 |
+
0.03515625,
|
| 111 |
+
0.033203125,
|
| 112 |
+
0.037109375,
|
| 113 |
+
0.0419921875,
|
| 114 |
+
0.029296875,
|
| 115 |
+
0.0341796875,
|
| 116 |
+
0.033203125,
|
| 117 |
+
0.0458984375,
|
| 118 |
+
0.0341796875,
|
| 119 |
+
0.0380859375,
|
| 120 |
+
0.0419921875,
|
| 121 |
+
0.03125,
|
| 122 |
+
0.03515625,
|
| 123 |
+
0.037109375,
|
| 124 |
+
0.0341796875,
|
| 125 |
+
0.0400390625,
|
| 126 |
+
0.03515625,
|
| 127 |
+
0.0947265625,
|
| 128 |
+
0.03125,
|
| 129 |
+
0.033203125,
|
| 130 |
+
0.03515625,
|
| 131 |
+
0.0439453125,
|
| 132 |
+
0.0546875,
|
| 133 |
+
0.0400390625,
|
| 134 |
+
0.037109375,
|
| 135 |
+
0.0576171875,
|
| 136 |
+
0.048828125,
|
| 137 |
+
0.03515625,
|
| 138 |
+
0.0400390625,
|
| 139 |
+
0.0400390625,
|
| 140 |
+
0.0400390625,
|
| 141 |
+
0.03515625,
|
| 142 |
+
0.03515625,
|
| 143 |
+
0.0498046875,
|
| 144 |
+
0.0322265625,
|
| 145 |
+
0.033203125,
|
| 146 |
+
0.04296875,
|
| 147 |
+
0.041015625,
|
| 148 |
+
0.044921875,
|
| 149 |
+
0.0302734375,
|
| 150 |
+
0.0390625,
|
| 151 |
+
0.037109375,
|
| 152 |
+
0.03125,
|
| 153 |
+
0.0546875,
|
| 154 |
+
0.0517578125,
|
| 155 |
+
0.0302734375,
|
| 156 |
+
0.02734375,
|
| 157 |
+
0.037109375,
|
| 158 |
+
0.05859375,
|
| 159 |
+
0.0302734375,
|
| 160 |
+
0.0390625
|
| 161 |
+
]
|
| 162 |
+
}
|
| 163 |
+
},
|
| 164 |
+
"first_exact_by_run": {}
|
| 165 |
+
}
|
| 166 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=flowmap run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=1000 views=512000 token_acc=0.0399 exact=0/64 exact_refs=0 hits=[]
|
| 167 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=1000 soft=none
|
| 168 |
+
[decode] max_len=1024 generated=64/64
|
| 169 |
+
{
|
| 170 |
+
"num_rows": 1,
|
| 171 |
+
"best_by_run": {
|
| 172 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 173 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 174 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0001000.pt",
|
| 175 |
+
"ckpt_step": 1000,
|
| 176 |
+
"endpoint_softening": "none",
|
| 177 |
+
"decode_rule": "dual_line_resample",
|
| 178 |
+
"steps": 128,
|
| 179 |
+
"time_schedule": "logit_normal",
|
| 180 |
+
"model_t_mode": "post",
|
| 181 |
+
"final_from": "state",
|
| 182 |
+
"n_gen": 64,
|
| 183 |
+
"n_refs": 8,
|
| 184 |
+
"token_acc_mean": 0.0558013916015625,
|
| 185 |
+
"token_acc_min": 0.0322265625,
|
| 186 |
+
"token_acc_max": 0.12109375,
|
| 187 |
+
"exact_acc": 0.0,
|
| 188 |
+
"exact_count": 0,
|
| 189 |
+
"exact_ref_coverage": 0.0,
|
| 190 |
+
"exact_ref_count": 0,
|
| 191 |
+
"exact_ref_hits": [],
|
| 192 |
+
"best_ref_idx": [
|
| 193 |
+
5,
|
| 194 |
+
3,
|
| 195 |
+
5,
|
| 196 |
+
5,
|
| 197 |
+
5,
|
| 198 |
+
3,
|
| 199 |
+
5,
|
| 200 |
+
5,
|
| 201 |
+
3,
|
| 202 |
+
5,
|
| 203 |
+
5,
|
| 204 |
+
3,
|
| 205 |
+
3,
|
| 206 |
+
5,
|
| 207 |
+
3,
|
| 208 |
+
5,
|
| 209 |
+
3,
|
| 210 |
+
5,
|
| 211 |
+
3,
|
| 212 |
+
3,
|
| 213 |
+
5,
|
| 214 |
+
4,
|
| 215 |
+
3,
|
| 216 |
+
3,
|
| 217 |
+
5,
|
| 218 |
+
3,
|
| 219 |
+
3,
|
| 220 |
+
3,
|
| 221 |
+
5,
|
| 222 |
+
5,
|
| 223 |
+
7,
|
| 224 |
+
5,
|
| 225 |
+
5,
|
| 226 |
+
5,
|
| 227 |
+
3,
|
| 228 |
+
7,
|
| 229 |
+
5,
|
| 230 |
+
5,
|
| 231 |
+
5,
|
| 232 |
+
4,
|
| 233 |
+
2,
|
| 234 |
+
3,
|
| 235 |
+
3,
|
| 236 |
+
7,
|
| 237 |
+
7,
|
| 238 |
+
3,
|
| 239 |
+
5,
|
| 240 |
+
7,
|
| 241 |
+
5,
|
| 242 |
+
5,
|
| 243 |
+
4,
|
| 244 |
+
0,
|
| 245 |
+
7,
|
| 246 |
+
5,
|
| 247 |
+
3,
|
| 248 |
+
0,
|
| 249 |
+
3,
|
| 250 |
+
2,
|
| 251 |
+
7,
|
| 252 |
+
5,
|
| 253 |
+
5,
|
| 254 |
+
3,
|
| 255 |
+
7,
|
| 256 |
+
4
|
| 257 |
+
],
|
| 258 |
+
"best_token_acc": [
|
| 259 |
+
0.0478515625,
|
| 260 |
+
0.0478515625,
|
| 261 |
+
0.060546875,
|
| 262 |
+
0.0546875,
|
| 263 |
+
0.091796875,
|
| 264 |
+
0.0390625,
|
| 265 |
+
0.0595703125,
|
| 266 |
+
0.0556640625,
|
| 267 |
+
0.0380859375,
|
| 268 |
+
0.05078125,
|
| 269 |
+
0.0810546875,
|
| 270 |
+
0.0693359375,
|
| 271 |
+
0.0498046875,
|
| 272 |
+
0.0849609375,
|
| 273 |
+
0.0361328125,
|
| 274 |
+
0.0546875,
|
| 275 |
+
0.060546875,
|
| 276 |
+
0.0615234375,
|
| 277 |
+
0.09765625,
|
| 278 |
+
0.044921875,
|
| 279 |
+
0.0439453125,
|
| 280 |
+
0.103515625,
|
| 281 |
+
0.0341796875,
|
| 282 |
+
0.0419921875,
|
| 283 |
+
0.0478515625,
|
| 284 |
+
0.044921875,
|
| 285 |
+
0.0537109375,
|
| 286 |
+
0.0556640625,
|
| 287 |
+
0.03515625,
|
| 288 |
+
0.0546875,
|
| 289 |
+
0.0654296875,
|
| 290 |
+
0.0576171875,
|
| 291 |
+
0.033203125,
|
| 292 |
+
0.0419921875,
|
| 293 |
+
0.0390625,
|
| 294 |
+
0.0380859375,
|
| 295 |
+
0.0498046875,
|
| 296 |
+
0.0498046875,
|
| 297 |
+
0.060546875,
|
| 298 |
+
0.0400390625,
|
| 299 |
+
0.037109375,
|
| 300 |
+
0.04296875,
|
| 301 |
+
0.0419921875,
|
| 302 |
+
0.072265625,
|
| 303 |
+
0.05078125,
|
| 304 |
+
0.0380859375,
|
| 305 |
+
0.0595703125,
|
| 306 |
+
0.0908203125,
|
| 307 |
+
0.0595703125,
|
| 308 |
+
0.0478515625,
|
| 309 |
+
0.0419921875,
|
| 310 |
+
0.0908203125,
|
| 311 |
+
0.064453125,
|
| 312 |
+
0.0869140625,
|
| 313 |
+
0.0751953125,
|
| 314 |
+
0.0478515625,
|
| 315 |
+
0.05078125,
|
| 316 |
+
0.0322265625,
|
| 317 |
+
0.0361328125,
|
| 318 |
+
0.060546875,
|
| 319 |
+
0.046875,
|
| 320 |
+
0.12109375,
|
| 321 |
+
0.05859375,
|
| 322 |
+
0.0390625
|
| 323 |
+
]
|
| 324 |
+
}
|
| 325 |
+
},
|
| 326 |
+
"first_exact_by_run": {}
|
| 327 |
+
}
|
| 328 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=dual_line_resample run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=1000 views=512000 token_acc=0.0558 exact=0/64 exact_refs=0 hits=[]
|
| 329 |
+
[ctx1024-sampleds] train config=p35_unif0_0p25_outwdm1 from=1000 to=2000
|
| 330 |
+
[ctx1024-sampleds] eval config=p35_unif0_0p25_outwdm1 step=2000
|
| 331 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=2000 soft=none
|
| 332 |
+
[decode] max_len=1024 generated=64/64
|
| 333 |
+
{
|
| 334 |
+
"num_rows": 1,
|
| 335 |
+
"best_by_run": {
|
| 336 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 337 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 338 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0002000.pt",
|
| 339 |
+
"ckpt_step": 2000,
|
| 340 |
+
"endpoint_softening": "none",
|
| 341 |
+
"decode_rule": "flowmap",
|
| 342 |
+
"steps": 128,
|
| 343 |
+
"time_schedule": "logit_normal",
|
| 344 |
+
"model_t_mode": "post",
|
| 345 |
+
"final_from": "state",
|
| 346 |
+
"n_gen": 64,
|
| 347 |
+
"n_refs": 8,
|
| 348 |
+
"token_acc_mean": 0.8083953857421875,
|
| 349 |
+
"token_acc_min": 0.1259765625,
|
| 350 |
+
"token_acc_max": 0.9404296875,
|
| 351 |
+
"exact_acc": 0.0,
|
| 352 |
+
"exact_count": 0,
|
| 353 |
+
"exact_ref_coverage": 0.0,
|
| 354 |
+
"exact_ref_count": 0,
|
| 355 |
+
"exact_ref_hits": [],
|
| 356 |
+
"best_ref_idx": [
|
| 357 |
+
3,
|
| 358 |
+
3,
|
| 359 |
+
3,
|
| 360 |
+
0,
|
| 361 |
+
1,
|
| 362 |
+
3,
|
| 363 |
+
1,
|
| 364 |
+
1,
|
| 365 |
+
1,
|
| 366 |
+
3,
|
| 367 |
+
3,
|
| 368 |
+
3,
|
| 369 |
+
1,
|
| 370 |
+
3,
|
| 371 |
+
1,
|
| 372 |
+
3,
|
| 373 |
+
1,
|
| 374 |
+
5,
|
| 375 |
+
3,
|
| 376 |
+
1,
|
| 377 |
+
2,
|
| 378 |
+
3,
|
| 379 |
+
1,
|
| 380 |
+
1,
|
| 381 |
+
0,
|
| 382 |
+
4,
|
| 383 |
+
3,
|
| 384 |
+
1,
|
| 385 |
+
1,
|
| 386 |
+
3,
|
| 387 |
+
1,
|
| 388 |
+
1,
|
| 389 |
+
0,
|
| 390 |
+
3,
|
| 391 |
+
3,
|
| 392 |
+
1,
|
| 393 |
+
3,
|
| 394 |
+
0,
|
| 395 |
+
1,
|
| 396 |
+
1,
|
| 397 |
+
1,
|
| 398 |
+
3,
|
| 399 |
+
1,
|
| 400 |
+
3,
|
| 401 |
+
4,
|
| 402 |
+
1,
|
| 403 |
+
2,
|
| 404 |
+
1,
|
| 405 |
+
1,
|
| 406 |
+
3,
|
| 407 |
+
7,
|
| 408 |
+
1,
|
| 409 |
+
1,
|
| 410 |
+
1,
|
| 411 |
+
0,
|
| 412 |
+
0,
|
| 413 |
+
7,
|
| 414 |
+
4,
|
| 415 |
+
1,
|
| 416 |
+
1,
|
| 417 |
+
7,
|
| 418 |
+
1,
|
| 419 |
+
1,
|
| 420 |
+
1
|
| 421 |
+
],
|
| 422 |
+
"best_token_acc": [
|
| 423 |
+
0.91796875,
|
| 424 |
+
0.9150390625,
|
| 425 |
+
0.8662109375,
|
| 426 |
+
0.712890625,
|
| 427 |
+
0.7900390625,
|
| 428 |
+
0.9228515625,
|
| 429 |
+
0.9072265625,
|
| 430 |
+
0.748046875,
|
| 431 |
+
0.9091796875,
|
| 432 |
+
0.9013671875,
|
| 433 |
+
0.8740234375,
|
| 434 |
+
0.90625,
|
| 435 |
+
0.8935546875,
|
| 436 |
+
0.8974609375,
|
| 437 |
+
0.8779296875,
|
| 438 |
+
0.9140625,
|
| 439 |
+
0.904296875,
|
| 440 |
+
0.3671875,
|
| 441 |
+
0.923828125,
|
| 442 |
+
0.8779296875,
|
| 443 |
+
0.791015625,
|
| 444 |
+
0.2236328125,
|
| 445 |
+
0.7861328125,
|
| 446 |
+
0.892578125,
|
| 447 |
+
0.751953125,
|
| 448 |
+
0.9404296875,
|
| 449 |
+
0.73828125,
|
| 450 |
+
0.9052734375,
|
| 451 |
+
0.857421875,
|
| 452 |
+
0.8837890625,
|
| 453 |
+
0.90625,
|
| 454 |
+
0.9013671875,
|
| 455 |
+
0.5400390625,
|
| 456 |
+
0.6630859375,
|
| 457 |
+
0.9091796875,
|
| 458 |
+
0.802734375,
|
| 459 |
+
0.892578125,
|
| 460 |
+
0.5458984375,
|
| 461 |
+
0.912109375,
|
| 462 |
+
0.1259765625,
|
| 463 |
+
0.8876953125,
|
| 464 |
+
0.91796875,
|
| 465 |
+
0.890625,
|
| 466 |
+
0.9111328125,
|
| 467 |
+
0.90625,
|
| 468 |
+
0.75390625,
|
| 469 |
+
0.8544921875,
|
| 470 |
+
0.9052734375,
|
| 471 |
+
0.8623046875,
|
| 472 |
+
0.91796875,
|
| 473 |
+
0.619140625,
|
| 474 |
+
0.8515625,
|
| 475 |
+
0.9072265625,
|
| 476 |
+
0.8671875,
|
| 477 |
+
0.8037109375,
|
| 478 |
+
0.783203125,
|
| 479 |
+
0.8935546875,
|
| 480 |
+
0.9345703125,
|
| 481 |
+
0.5693359375,
|
| 482 |
+
0.31640625,
|
| 483 |
+
0.7666015625,
|
| 484 |
+
0.826171875,
|
| 485 |
+
0.8984375,
|
| 486 |
+
0.8955078125
|
| 487 |
+
]
|
| 488 |
+
}
|
| 489 |
+
},
|
| 490 |
+
"first_exact_by_run": {}
|
| 491 |
+
}
|
| 492 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=flowmap run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=2000 views=1024000 token_acc=0.8084 exact=0/64 exact_refs=0 hits=[]
|
| 493 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=2000 soft=none
|
| 494 |
+
[decode] max_len=1024 generated=64/64
|
| 495 |
+
{
|
| 496 |
+
"num_rows": 1,
|
| 497 |
+
"best_by_run": {
|
| 498 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 499 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 500 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0002000.pt",
|
| 501 |
+
"ckpt_step": 2000,
|
| 502 |
+
"endpoint_softening": "none",
|
| 503 |
+
"decode_rule": "dual_line_resample",
|
| 504 |
+
"steps": 128,
|
| 505 |
+
"time_schedule": "logit_normal",
|
| 506 |
+
"model_t_mode": "post",
|
| 507 |
+
"final_from": "state",
|
| 508 |
+
"n_gen": 64,
|
| 509 |
+
"n_refs": 8,
|
| 510 |
+
"token_acc_mean": 0.8959808349609375,
|
| 511 |
+
"token_acc_min": 0.7607421875,
|
| 512 |
+
"token_acc_max": 0.953125,
|
| 513 |
+
"exact_acc": 0.0,
|
| 514 |
+
"exact_count": 0,
|
| 515 |
+
"exact_ref_coverage": 0.0,
|
| 516 |
+
"exact_ref_count": 0,
|
| 517 |
+
"exact_ref_hits": [],
|
| 518 |
+
"best_ref_idx": [
|
| 519 |
+
2,
|
| 520 |
+
0,
|
| 521 |
+
2,
|
| 522 |
+
2,
|
| 523 |
+
3,
|
| 524 |
+
1,
|
| 525 |
+
0,
|
| 526 |
+
7,
|
| 527 |
+
2,
|
| 528 |
+
2,
|
| 529 |
+
2,
|
| 530 |
+
3,
|
| 531 |
+
2,
|
| 532 |
+
7,
|
| 533 |
+
2,
|
| 534 |
+
3,
|
| 535 |
+
0,
|
| 536 |
+
2,
|
| 537 |
+
2,
|
| 538 |
+
7,
|
| 539 |
+
2,
|
| 540 |
+
3,
|
| 541 |
+
2,
|
| 542 |
+
7,
|
| 543 |
+
7,
|
| 544 |
+
0,
|
| 545 |
+
3,
|
| 546 |
+
2,
|
| 547 |
+
3,
|
| 548 |
+
3,
|
| 549 |
+
2,
|
| 550 |
+
2,
|
| 551 |
+
3,
|
| 552 |
+
2,
|
| 553 |
+
2,
|
| 554 |
+
3,
|
| 555 |
+
2,
|
| 556 |
+
2,
|
| 557 |
+
2,
|
| 558 |
+
2,
|
| 559 |
+
0,
|
| 560 |
+
0,
|
| 561 |
+
2,
|
| 562 |
+
5,
|
| 563 |
+
3,
|
| 564 |
+
2,
|
| 565 |
+
2,
|
| 566 |
+
2,
|
| 567 |
+
3,
|
| 568 |
+
0,
|
| 569 |
+
2,
|
| 570 |
+
5,
|
| 571 |
+
4,
|
| 572 |
+
3,
|
| 573 |
+
3,
|
| 574 |
+
7,
|
| 575 |
+
0,
|
| 576 |
+
2,
|
| 577 |
+
3,
|
| 578 |
+
2,
|
| 579 |
+
3,
|
| 580 |
+
7,
|
| 581 |
+
2,
|
| 582 |
+
2
|
| 583 |
+
],
|
| 584 |
+
"best_token_acc": [
|
| 585 |
+
0.9111328125,
|
| 586 |
+
0.76171875,
|
| 587 |
+
0.912109375,
|
| 588 |
+
0.91796875,
|
| 589 |
+
0.9208984375,
|
| 590 |
+
0.9033203125,
|
| 591 |
+
0.7783203125,
|
| 592 |
+
0.9072265625,
|
| 593 |
+
0.912109375,
|
| 594 |
+
0.9130859375,
|
| 595 |
+
0.9140625,
|
| 596 |
+
0.9140625,
|
| 597 |
+
0.9111328125,
|
| 598 |
+
0.9091796875,
|
| 599 |
+
0.9130859375,
|
| 600 |
+
0.919921875,
|
| 601 |
+
0.775390625,
|
| 602 |
+
0.9130859375,
|
| 603 |
+
0.912109375,
|
| 604 |
+
0.9140625,
|
| 605 |
+
0.9150390625,
|
| 606 |
+
0.9091796875,
|
| 607 |
+
0.9140625,
|
| 608 |
+
0.9033203125,
|
| 609 |
+
0.9052734375,
|
| 610 |
+
0.779296875,
|
| 611 |
+
0.9228515625,
|
| 612 |
+
0.9140625,
|
| 613 |
+
0.9140625,
|
| 614 |
+
0.9189453125,
|
| 615 |
+
0.9189453125,
|
| 616 |
+
0.9150390625,
|
| 617 |
+
0.9267578125,
|
| 618 |
+
0.91015625,
|
| 619 |
+
0.9130859375,
|
| 620 |
+
0.91796875,
|
| 621 |
+
0.908203125,
|
| 622 |
+
0.9189453125,
|
| 623 |
+
0.9150390625,
|
| 624 |
+
0.912109375,
|
| 625 |
+
0.7666015625,
|
| 626 |
+
0.7802734375,
|
| 627 |
+
0.9150390625,
|
| 628 |
+
0.8994140625,
|
| 629 |
+
0.9111328125,
|
| 630 |
+
0.9072265625,
|
| 631 |
+
0.9091796875,
|
| 632 |
+
0.9169921875,
|
| 633 |
+
0.912109375,
|
| 634 |
+
0.7607421875,
|
| 635 |
+
0.9111328125,
|
| 636 |
+
0.900390625,
|
| 637 |
+
0.953125,
|
| 638 |
+
0.9189453125,
|
| 639 |
+
0.9228515625,
|
| 640 |
+
0.91015625,
|
| 641 |
+
0.771484375,
|
| 642 |
+
0.9150390625,
|
| 643 |
+
0.91796875,
|
| 644 |
+
0.904296875,
|
| 645 |
+
0.9150390625,
|
| 646 |
+
0.9111328125,
|
| 647 |
+
0.9091796875,
|
| 648 |
+
0.9169921875
|
| 649 |
+
]
|
| 650 |
+
}
|
| 651 |
+
},
|
| 652 |
+
"first_exact_by_run": {}
|
| 653 |
+
}
|
| 654 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=dual_line_resample run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=2000 views=1024000 token_acc=0.8960 exact=0/64 exact_refs=0 hits=[]
|
| 655 |
+
[ctx1024-sampleds] train config=p35_unif0_0p25_outwdm1 from=2000 to=3000
|
| 656 |
+
[ctx1024-sampleds] eval config=p35_unif0_0p25_outwdm1 step=3000
|
| 657 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=3000 soft=none
|
| 658 |
+
[decode] max_len=1024 generated=64/64
|
| 659 |
+
{
|
| 660 |
+
"num_rows": 1,
|
| 661 |
+
"best_by_run": {
|
| 662 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 663 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 664 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0003000.pt",
|
| 665 |
+
"ckpt_step": 3000,
|
| 666 |
+
"endpoint_softening": "none",
|
| 667 |
+
"decode_rule": "flowmap",
|
| 668 |
+
"steps": 128,
|
| 669 |
+
"time_schedule": "logit_normal",
|
| 670 |
+
"model_t_mode": "post",
|
| 671 |
+
"final_from": "state",
|
| 672 |
+
"n_gen": 64,
|
| 673 |
+
"n_refs": 8,
|
| 674 |
+
"token_acc_mean": 0.714691162109375,
|
| 675 |
+
"token_acc_min": 0.39453125,
|
| 676 |
+
"token_acc_max": 0.994140625,
|
| 677 |
+
"exact_acc": 0.0,
|
| 678 |
+
"exact_count": 0,
|
| 679 |
+
"exact_ref_coverage": 0.0,
|
| 680 |
+
"exact_ref_count": 0,
|
| 681 |
+
"exact_ref_hits": [],
|
| 682 |
+
"best_ref_idx": [
|
| 683 |
+
4,
|
| 684 |
+
3,
|
| 685 |
+
4,
|
| 686 |
+
4,
|
| 687 |
+
3,
|
| 688 |
+
3,
|
| 689 |
+
3,
|
| 690 |
+
3,
|
| 691 |
+
4,
|
| 692 |
+
4,
|
| 693 |
+
3,
|
| 694 |
+
3,
|
| 695 |
+
3,
|
| 696 |
+
3,
|
| 697 |
+
3,
|
| 698 |
+
4,
|
| 699 |
+
4,
|
| 700 |
+
4,
|
| 701 |
+
3,
|
| 702 |
+
3,
|
| 703 |
+
3,
|
| 704 |
+
3,
|
| 705 |
+
4,
|
| 706 |
+
4,
|
| 707 |
+
4,
|
| 708 |
+
4,
|
| 709 |
+
5,
|
| 710 |
+
3,
|
| 711 |
+
3,
|
| 712 |
+
3,
|
| 713 |
+
3,
|
| 714 |
+
4,
|
| 715 |
+
3,
|
| 716 |
+
3,
|
| 717 |
+
4,
|
| 718 |
+
4,
|
| 719 |
+
3,
|
| 720 |
+
4,
|
| 721 |
+
4,
|
| 722 |
+
4,
|
| 723 |
+
4,
|
| 724 |
+
4,
|
| 725 |
+
3,
|
| 726 |
+
3,
|
| 727 |
+
3,
|
| 728 |
+
4,
|
| 729 |
+
5,
|
| 730 |
+
4,
|
| 731 |
+
4,
|
| 732 |
+
3,
|
| 733 |
+
4,
|
| 734 |
+
3,
|
| 735 |
+
4,
|
| 736 |
+
3,
|
| 737 |
+
3,
|
| 738 |
+
4,
|
| 739 |
+
4,
|
| 740 |
+
3,
|
| 741 |
+
3,
|
| 742 |
+
3,
|
| 743 |
+
3,
|
| 744 |
+
4,
|
| 745 |
+
4,
|
| 746 |
+
4
|
| 747 |
+
],
|
| 748 |
+
"best_token_acc": [
|
| 749 |
+
0.833984375,
|
| 750 |
+
0.5283203125,
|
| 751 |
+
0.8798828125,
|
| 752 |
+
0.4619140625,
|
| 753 |
+
0.734375,
|
| 754 |
+
0.654296875,
|
| 755 |
+
0.83203125,
|
| 756 |
+
0.6171875,
|
| 757 |
+
0.9921875,
|
| 758 |
+
0.4677734375,
|
| 759 |
+
0.822265625,
|
| 760 |
+
0.4443359375,
|
| 761 |
+
0.85546875,
|
| 762 |
+
0.4833984375,
|
| 763 |
+
0.5419921875,
|
| 764 |
+
0.9326171875,
|
| 765 |
+
0.939453125,
|
| 766 |
+
0.7412109375,
|
| 767 |
+
0.625,
|
| 768 |
+
0.6806640625,
|
| 769 |
+
0.4599609375,
|
| 770 |
+
0.91015625,
|
| 771 |
+
0.5107421875,
|
| 772 |
+
0.865234375,
|
| 773 |
+
0.455078125,
|
| 774 |
+
0.8427734375,
|
| 775 |
+
0.572265625,
|
| 776 |
+
0.53125,
|
| 777 |
+
0.595703125,
|
| 778 |
+
0.73046875,
|
| 779 |
+
0.8173828125,
|
| 780 |
+
0.39453125,
|
| 781 |
+
0.9609375,
|
| 782 |
+
0.587890625,
|
| 783 |
+
0.9794921875,
|
| 784 |
+
0.9287109375,
|
| 785 |
+
0.7939453125,
|
| 786 |
+
0.994140625,
|
| 787 |
+
0.7939453125,
|
| 788 |
+
0.8359375,
|
| 789 |
+
0.875,
|
| 790 |
+
0.533203125,
|
| 791 |
+
0.8125,
|
| 792 |
+
0.7158203125,
|
| 793 |
+
0.75,
|
| 794 |
+
0.4931640625,
|
| 795 |
+
0.94921875,
|
| 796 |
+
0.9453125,
|
| 797 |
+
0.8994140625,
|
| 798 |
+
0.51953125,
|
| 799 |
+
0.9931640625,
|
| 800 |
+
0.875,
|
| 801 |
+
0.5595703125,
|
| 802 |
+
0.8125,
|
| 803 |
+
0.7080078125,
|
| 804 |
+
0.8935546875,
|
| 805 |
+
0.427734375,
|
| 806 |
+
0.513671875,
|
| 807 |
+
0.4287109375,
|
| 808 |
+
0.9326171875,
|
| 809 |
+
0.5634765625,
|
| 810 |
+
0.9501953125,
|
| 811 |
+
0.455078125,
|
| 812 |
+
0.5048828125
|
| 813 |
+
]
|
| 814 |
+
}
|
| 815 |
+
},
|
| 816 |
+
"first_exact_by_run": {}
|
| 817 |
+
}
|
| 818 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=flowmap run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=3000 views=1536000 token_acc=0.7147 exact=0/64 exact_refs=0 hits=[]
|
| 819 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=3000 soft=none
|
| 820 |
+
[decode] max_len=1024 generated=64/64
|
| 821 |
+
{
|
| 822 |
+
"num_rows": 1,
|
| 823 |
+
"best_by_run": {
|
| 824 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 825 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 826 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0003000.pt",
|
| 827 |
+
"ckpt_step": 3000,
|
| 828 |
+
"endpoint_softening": "none",
|
| 829 |
+
"decode_rule": "dual_line_resample",
|
| 830 |
+
"steps": 128,
|
| 831 |
+
"time_schedule": "logit_normal",
|
| 832 |
+
"model_t_mode": "post",
|
| 833 |
+
"final_from": "state",
|
| 834 |
+
"n_gen": 64,
|
| 835 |
+
"n_refs": 8,
|
| 836 |
+
"token_acc_mean": 0.9047393798828125,
|
| 837 |
+
"token_acc_min": 0.1435546875,
|
| 838 |
+
"token_acc_max": 0.9775390625,
|
| 839 |
+
"exact_acc": 0.0,
|
| 840 |
+
"exact_count": 0,
|
| 841 |
+
"exact_ref_coverage": 0.0,
|
| 842 |
+
"exact_ref_count": 0,
|
| 843 |
+
"exact_ref_hits": [],
|
| 844 |
+
"best_ref_idx": [
|
| 845 |
+
4,
|
| 846 |
+
4,
|
| 847 |
+
2,
|
| 848 |
+
4,
|
| 849 |
+
4,
|
| 850 |
+
4,
|
| 851 |
+
4,
|
| 852 |
+
4,
|
| 853 |
+
5,
|
| 854 |
+
4,
|
| 855 |
+
4,
|
| 856 |
+
4,
|
| 857 |
+
2,
|
| 858 |
+
4,
|
| 859 |
+
2,
|
| 860 |
+
4,
|
| 861 |
+
2,
|
| 862 |
+
2,
|
| 863 |
+
4,
|
| 864 |
+
3,
|
| 865 |
+
1,
|
| 866 |
+
5,
|
| 867 |
+
2,
|
| 868 |
+
4,
|
| 869 |
+
3,
|
| 870 |
+
5,
|
| 871 |
+
3,
|
| 872 |
+
4,
|
| 873 |
+
4,
|
| 874 |
+
3,
|
| 875 |
+
3,
|
| 876 |
+
6,
|
| 877 |
+
3,
|
| 878 |
+
4,
|
| 879 |
+
4,
|
| 880 |
+
2,
|
| 881 |
+
5,
|
| 882 |
+
4,
|
| 883 |
+
4,
|
| 884 |
+
2,
|
| 885 |
+
4,
|
| 886 |
+
4,
|
| 887 |
+
4,
|
| 888 |
+
4,
|
| 889 |
+
2,
|
| 890 |
+
1,
|
| 891 |
+
3,
|
| 892 |
+
4,
|
| 893 |
+
2,
|
| 894 |
+
4,
|
| 895 |
+
4,
|
| 896 |
+
4,
|
| 897 |
+
2,
|
| 898 |
+
4,
|
| 899 |
+
4,
|
| 900 |
+
4,
|
| 901 |
+
4,
|
| 902 |
+
4,
|
| 903 |
+
3,
|
| 904 |
+
4,
|
| 905 |
+
2,
|
| 906 |
+
3,
|
| 907 |
+
2,
|
| 908 |
+
4
|
| 909 |
+
],
|
| 910 |
+
"best_token_acc": [
|
| 911 |
+
0.9716796875,
|
| 912 |
+
0.97265625,
|
| 913 |
+
0.833984375,
|
| 914 |
+
0.974609375,
|
| 915 |
+
0.974609375,
|
| 916 |
+
0.9638671875,
|
| 917 |
+
0.9736328125,
|
| 918 |
+
0.9658203125,
|
| 919 |
+
0.939453125,
|
| 920 |
+
0.966796875,
|
| 921 |
+
0.9736328125,
|
| 922 |
+
0.966796875,
|
| 923 |
+
0.8095703125,
|
| 924 |
+
0.974609375,
|
| 925 |
+
0.8251953125,
|
| 926 |
+
0.9697265625,
|
| 927 |
+
0.8359375,
|
| 928 |
+
0.837890625,
|
| 929 |
+
0.96875,
|
| 930 |
+
0.8681640625,
|
| 931 |
+
0.701171875,
|
| 932 |
+
0.9365234375,
|
| 933 |
+
0.7919921875,
|
| 934 |
+
0.970703125,
|
| 935 |
+
0.8515625,
|
| 936 |
+
0.939453125,
|
| 937 |
+
0.8857421875,
|
| 938 |
+
0.9765625,
|
| 939 |
+
0.9697265625,
|
| 940 |
+
0.8828125,
|
| 941 |
+
0.873046875,
|
| 942 |
+
0.1435546875,
|
| 943 |
+
0.90625,
|
| 944 |
+
0.9609375,
|
| 945 |
+
0.97265625,
|
| 946 |
+
0.8212890625,
|
| 947 |
+
0.9306640625,
|
| 948 |
+
0.9677734375,
|
| 949 |
+
0.96875,
|
| 950 |
+
0.83984375,
|
| 951 |
+
0.97265625,
|
| 952 |
+
0.970703125,
|
| 953 |
+
0.9736328125,
|
| 954 |
+
0.96875,
|
| 955 |
+
0.830078125,
|
| 956 |
+
0.681640625,
|
| 957 |
+
0.8916015625,
|
| 958 |
+
0.9736328125,
|
| 959 |
+
0.8349609375,
|
| 960 |
+
0.9716796875,
|
| 961 |
+
0.9755859375,
|
| 962 |
+
0.9716796875,
|
| 963 |
+
0.822265625,
|
| 964 |
+
0.95703125,
|
| 965 |
+
0.962890625,
|
| 966 |
+
0.96875,
|
| 967 |
+
0.9677734375,
|
| 968 |
+
0.9697265625,
|
| 969 |
+
0.9072265625,
|
| 970 |
+
0.9775390625,
|
| 971 |
+
0.8232421875,
|
| 972 |
+
0.892578125,
|
| 973 |
+
0.80859375,
|
| 974 |
+
0.970703125
|
| 975 |
+
]
|
| 976 |
+
}
|
| 977 |
+
},
|
| 978 |
+
"first_exact_by_run": {}
|
| 979 |
+
}
|
| 980 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=dual_line_resample run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=3000 views=1536000 token_acc=0.9047 exact=0/64 exact_refs=0 hits=[]
|
| 981 |
+
[ctx1024-sampleds] train config=p35_unif0_0p25_outwdm1 from=3000 to=4000
|
| 982 |
+
[ctx1024-sampleds] eval config=p35_unif0_0p25_outwdm1 step=4000
|
| 983 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=4000 soft=none
|
| 984 |
+
[decode] max_len=1024 generated=64/64
|
| 985 |
+
{
|
| 986 |
+
"num_rows": 1,
|
| 987 |
+
"best_by_run": {
|
| 988 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 989 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 990 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0004000.pt",
|
| 991 |
+
"ckpt_step": 4000,
|
| 992 |
+
"endpoint_softening": "none",
|
| 993 |
+
"decode_rule": "flowmap",
|
| 994 |
+
"steps": 128,
|
| 995 |
+
"time_schedule": "logit_normal",
|
| 996 |
+
"model_t_mode": "post",
|
| 997 |
+
"final_from": "state",
|
| 998 |
+
"n_gen": 64,
|
| 999 |
+
"n_refs": 8,
|
| 1000 |
+
"token_acc_mean": 0.93096923828125,
|
| 1001 |
+
"token_acc_min": 0.51953125,
|
| 1002 |
+
"token_acc_max": 0.9990234375,
|
| 1003 |
+
"exact_acc": 0.0,
|
| 1004 |
+
"exact_count": 0,
|
| 1005 |
+
"exact_ref_coverage": 0.0,
|
| 1006 |
+
"exact_ref_count": 0,
|
| 1007 |
+
"exact_ref_hits": [],
|
| 1008 |
+
"best_ref_idx": [
|
| 1009 |
+
1,
|
| 1010 |
+
1,
|
| 1011 |
+
1,
|
| 1012 |
+
3,
|
| 1013 |
+
7,
|
| 1014 |
+
1,
|
| 1015 |
+
2,
|
| 1016 |
+
1,
|
| 1017 |
+
1,
|
| 1018 |
+
4,
|
| 1019 |
+
1,
|
| 1020 |
+
1,
|
| 1021 |
+
3,
|
| 1022 |
+
1,
|
| 1023 |
+
3,
|
| 1024 |
+
2,
|
| 1025 |
+
1,
|
| 1026 |
+
3,
|
| 1027 |
+
3,
|
| 1028 |
+
1,
|
| 1029 |
+
3,
|
| 1030 |
+
1,
|
| 1031 |
+
3,
|
| 1032 |
+
2,
|
| 1033 |
+
1,
|
| 1034 |
+
1,
|
| 1035 |
+
3,
|
| 1036 |
+
3,
|
| 1037 |
+
3,
|
| 1038 |
+
1,
|
| 1039 |
+
2,
|
| 1040 |
+
1,
|
| 1041 |
+
3,
|
| 1042 |
+
1,
|
| 1043 |
+
3,
|
| 1044 |
+
1,
|
| 1045 |
+
3,
|
| 1046 |
+
1,
|
| 1047 |
+
1,
|
| 1048 |
+
1,
|
| 1049 |
+
2,
|
| 1050 |
+
3,
|
| 1051 |
+
3,
|
| 1052 |
+
1,
|
| 1053 |
+
1,
|
| 1054 |
+
3,
|
| 1055 |
+
1,
|
| 1056 |
+
3,
|
| 1057 |
+
3,
|
| 1058 |
+
4,
|
| 1059 |
+
1,
|
| 1060 |
+
3,
|
| 1061 |
+
5,
|
| 1062 |
+
1,
|
| 1063 |
+
3,
|
| 1064 |
+
2,
|
| 1065 |
+
1,
|
| 1066 |
+
1,
|
| 1067 |
+
1,
|
| 1068 |
+
1,
|
| 1069 |
+
2,
|
| 1070 |
+
1,
|
| 1071 |
+
1,
|
| 1072 |
+
3
|
| 1073 |
+
],
|
| 1074 |
+
"best_token_acc": [
|
| 1075 |
+
0.9814453125,
|
| 1076 |
+
0.9912109375,
|
| 1077 |
+
0.9921875,
|
| 1078 |
+
0.8837890625,
|
| 1079 |
+
0.998046875,
|
| 1080 |
+
0.51953125,
|
| 1081 |
+
0.9912109375,
|
| 1082 |
+
0.9755859375,
|
| 1083 |
+
0.9365234375,
|
| 1084 |
+
0.9560546875,
|
| 1085 |
+
0.9921875,
|
| 1086 |
+
0.9873046875,
|
| 1087 |
+
0.94140625,
|
| 1088 |
+
0.9052734375,
|
| 1089 |
+
0.9111328125,
|
| 1090 |
+
0.9931640625,
|
| 1091 |
+
0.8427734375,
|
| 1092 |
+
0.556640625,
|
| 1093 |
+
0.9951171875,
|
| 1094 |
+
0.978515625,
|
| 1095 |
+
0.98828125,
|
| 1096 |
+
0.9697265625,
|
| 1097 |
+
0.9873046875,
|
| 1098 |
+
0.9921875,
|
| 1099 |
+
0.9892578125,
|
| 1100 |
+
0.986328125,
|
| 1101 |
+
0.865234375,
|
| 1102 |
+
0.9990234375,
|
| 1103 |
+
0.6884765625,
|
| 1104 |
+
0.9921875,
|
| 1105 |
+
0.8115234375,
|
| 1106 |
+
0.6044921875,
|
| 1107 |
+
0.9853515625,
|
| 1108 |
+
0.9921875,
|
| 1109 |
+
0.880859375,
|
| 1110 |
+
0.9853515625,
|
| 1111 |
+
0.99609375,
|
| 1112 |
+
0.9248046875,
|
| 1113 |
+
0.982421875,
|
| 1114 |
+
0.9833984375,
|
| 1115 |
+
0.96484375,
|
| 1116 |
+
0.998046875,
|
| 1117 |
+
0.98046875,
|
| 1118 |
+
0.990234375,
|
| 1119 |
+
0.9921875,
|
| 1120 |
+
0.81640625,
|
| 1121 |
+
0.990234375,
|
| 1122 |
+
0.9833984375,
|
| 1123 |
+
0.99609375,
|
| 1124 |
+
0.9951171875,
|
| 1125 |
+
0.70703125,
|
| 1126 |
+
0.904296875,
|
| 1127 |
+
0.9990234375,
|
| 1128 |
+
0.9794921875,
|
| 1129 |
+
0.994140625,
|
| 1130 |
+
0.740234375,
|
| 1131 |
+
0.8798828125,
|
| 1132 |
+
0.990234375,
|
| 1133 |
+
0.984375,
|
| 1134 |
+
0.990234375,
|
| 1135 |
+
0.826171875,
|
| 1136 |
+
0.9921875,
|
| 1137 |
+
0.9873046875,
|
| 1138 |
+
0.966796875
|
| 1139 |
+
]
|
| 1140 |
+
}
|
| 1141 |
+
},
|
| 1142 |
+
"first_exact_by_run": {}
|
| 1143 |
+
}
|
| 1144 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=flowmap run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=4000 views=2048000 token_acc=0.9310 exact=0/64 exact_refs=0 hits=[]
|
| 1145 |
+
[eval-decode-acc] train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 step=4000 soft=none
|
| 1146 |
+
[decode] max_len=1024 generated=64/64
|
| 1147 |
+
{
|
| 1148 |
+
"num_rows": 1,
|
| 1149 |
+
"best_by_run": {
|
| 1150 |
+
"train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705::none": {
|
| 1151 |
+
"run": "train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705",
|
| 1152 |
+
"checkpoint": "runs/train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705/step_0004000.pt",
|
| 1153 |
+
"ckpt_step": 4000,
|
| 1154 |
+
"endpoint_softening": "none",
|
| 1155 |
+
"decode_rule": "dual_line_resample",
|
| 1156 |
+
"steps": 128,
|
| 1157 |
+
"time_schedule": "logit_normal",
|
| 1158 |
+
"model_t_mode": "post",
|
| 1159 |
+
"final_from": "state",
|
| 1160 |
+
"n_gen": 64,
|
| 1161 |
+
"n_refs": 8,
|
| 1162 |
+
"token_acc_mean": 0.9383087158203125,
|
| 1163 |
+
"token_acc_min": 0.771484375,
|
| 1164 |
+
"token_acc_max": 0.998046875,
|
| 1165 |
+
"exact_acc": 0.0,
|
| 1166 |
+
"exact_count": 0,
|
| 1167 |
+
"exact_ref_coverage": 0.0,
|
| 1168 |
+
"exact_ref_count": 0,
|
| 1169 |
+
"exact_ref_hits": [],
|
| 1170 |
+
"best_ref_idx": [
|
| 1171 |
+
4,
|
| 1172 |
+
6,
|
| 1173 |
+
1,
|
| 1174 |
+
4,
|
| 1175 |
+
6,
|
| 1176 |
+
1,
|
| 1177 |
+
3,
|
| 1178 |
+
6,
|
| 1179 |
+
2,
|
| 1180 |
+
4,
|
| 1181 |
+
3,
|
| 1182 |
+
3,
|
| 1183 |
+
6,
|
| 1184 |
+
3,
|
| 1185 |
+
6,
|
| 1186 |
+
4,
|
| 1187 |
+
4,
|
| 1188 |
+
6,
|
| 1189 |
+
6,
|
| 1190 |
+
3,
|
| 1191 |
+
2,
|
| 1192 |
+
1,
|
| 1193 |
+
4,
|
| 1194 |
+
3,
|
| 1195 |
+
3,
|
| 1196 |
+
4,
|
| 1197 |
+
6,
|
| 1198 |
+
4,
|
| 1199 |
+
3,
|
| 1200 |
+
3,
|
| 1201 |
+
4,
|
| 1202 |
+
1,
|
| 1203 |
+
4,
|
| 1204 |
+
1,
|
| 1205 |
+
4,
|
| 1206 |
+
4,
|
| 1207 |
+
1,
|
| 1208 |
+
6,
|
| 1209 |
+
6,
|
| 1210 |
+
6,
|
| 1211 |
+
1,
|
| 1212 |
+
6,
|
| 1213 |
+
1,
|
| 1214 |
+
4,
|
| 1215 |
+
6,
|
| 1216 |
+
1,
|
| 1217 |
+
6,
|
| 1218 |
+
7,
|
| 1219 |
+
1,
|
| 1220 |
+
7,
|
| 1221 |
+
4,
|
| 1222 |
+
7,
|
| 1223 |
+
4,
|
| 1224 |
+
3,
|
| 1225 |
+
4,
|
| 1226 |
+
1,
|
| 1227 |
+
2,
|
| 1228 |
+
4,
|
| 1229 |
+
4,
|
| 1230 |
+
6,
|
| 1231 |
+
6,
|
| 1232 |
+
3,
|
| 1233 |
+
1,
|
| 1234 |
+
6
|
| 1235 |
+
],
|
| 1236 |
+
"best_token_acc": [
|
| 1237 |
+
0.9970703125,
|
| 1238 |
+
0.7880859375,
|
| 1239 |
+
0.984375,
|
| 1240 |
+
0.99609375,
|
| 1241 |
+
0.779296875,
|
| 1242 |
+
0.9853515625,
|
| 1243 |
+
0.998046875,
|
| 1244 |
+
0.77734375,
|
| 1245 |
+
0.9921875,
|
| 1246 |
+
0.998046875,
|
| 1247 |
+
0.998046875,
|
| 1248 |
+
0.998046875,
|
| 1249 |
+
0.796875,
|
| 1250 |
+
0.998046875,
|
| 1251 |
+
0.7919921875,
|
| 1252 |
+
0.998046875,
|
| 1253 |
+
0.998046875,
|
| 1254 |
+
0.7890625,
|
| 1255 |
+
0.80078125,
|
| 1256 |
+
0.998046875,
|
| 1257 |
+
0.994140625,
|
| 1258 |
+
0.986328125,
|
| 1259 |
+
0.9970703125,
|
| 1260 |
+
0.998046875,
|
| 1261 |
+
0.998046875,
|
| 1262 |
+
0.9970703125,
|
| 1263 |
+
0.771484375,
|
| 1264 |
+
0.9970703125,
|
| 1265 |
+
0.998046875,
|
| 1266 |
+
0.9970703125,
|
| 1267 |
+
0.9970703125,
|
| 1268 |
+
0.984375,
|
| 1269 |
+
0.9970703125,
|
| 1270 |
+
0.986328125,
|
| 1271 |
+
0.9970703125,
|
| 1272 |
+
0.9970703125,
|
| 1273 |
+
0.9814453125,
|
| 1274 |
+
0.7900390625,
|
| 1275 |
+
0.7900390625,
|
| 1276 |
+
0.7841796875,
|
| 1277 |
+
0.9853515625,
|
| 1278 |
+
0.7978515625,
|
| 1279 |
+
0.982421875,
|
| 1280 |
+
0.9970703125,
|
| 1281 |
+
0.7900390625,
|
| 1282 |
+
0.984375,
|
| 1283 |
+
0.7978515625,
|
| 1284 |
+
0.9814453125,
|
| 1285 |
+
0.986328125,
|
| 1286 |
+
0.9736328125,
|
| 1287 |
+
0.9970703125,
|
| 1288 |
+
0.9873046875,
|
| 1289 |
+
0.998046875,
|
| 1290 |
+
0.998046875,
|
| 1291 |
+
0.9970703125,
|
| 1292 |
+
0.9853515625,
|
| 1293 |
+
0.9921875,
|
| 1294 |
+
0.9970703125,
|
| 1295 |
+
0.9951171875,
|
| 1296 |
+
0.7724609375,
|
| 1297 |
+
0.7880859375,
|
| 1298 |
+
0.998046875,
|
| 1299 |
+
0.9853515625,
|
| 1300 |
+
0.7822265625
|
| 1301 |
+
]
|
| 1302 |
+
}
|
| 1303 |
+
},
|
| 1304 |
+
"first_exact_by_run": {}
|
| 1305 |
+
}
|
| 1306 |
+
RESULT config=p35_unif0_0p25_outwdm1 decode=dual_line_resample run=train8_ctx1024_tradeoff_p35_unif0_0p25_outwdm1_ctx1024_tradeoff_dual_20260517_225705 ckpt_step=4000 views=2048000 token_acc=0.9383 exact=0/64 exact_refs=0 hits=[]
|
| 1307 |
+
[ctx1024-sampleds] train config=p35_unif0_0p25_outwdm1 from=4000 to=5000
|
LTA_openwebtext_dualt/logs/ctx1024_sampleds_sweep_4gpu/t5tok_ctx1024_randk_20260518_014800.log
ADDED
|
@@ -0,0 +1,2621 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[ctx1024-sampleds] start stamp=t5tok_ctx1024_randk_20260518_014800 len=1024 vocab=2423 out=docs/lta_samples/metrics_20260518/t5tok_ctx1024_randk_t5tok_ctx1024_randk_20260518_014800
|
| 2 |
+
[ctx1024-sampleds] config=p50_rand0_4_unif0_0p25_outwdm1 run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 p=0.50 mode=sampled_path steps=4 steps_min=0 s_dist=uniform s_frac=0.0->0.25 beta=2.0,6.0 outwd=-1 sync_t=1
|
| 3 |
+
[ctx1024-sampleds] train config=p50_rand0_4_unif0_0p25_outwdm1 from=0 to=1000
|
| 4 |
+
[ctx1024-sampleds] eval config=p50_rand0_4_unif0_0p25_outwdm1 step=1000
|
| 5 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=1000 soft=none
|
| 6 |
+
[decode] max_len=1024 generated=64/64
|
| 7 |
+
{
|
| 8 |
+
"num_rows": 1,
|
| 9 |
+
"best_by_run": {
|
| 10 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 11 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 12 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0001000.pt",
|
| 13 |
+
"ckpt_step": 1000,
|
| 14 |
+
"endpoint_softening": "none",
|
| 15 |
+
"decode_rule": "dirichlet_resample",
|
| 16 |
+
"steps": 128,
|
| 17 |
+
"time_schedule": "logit_normal",
|
| 18 |
+
"model_t_mode": "post",
|
| 19 |
+
"final_from": "state",
|
| 20 |
+
"n_gen": 64,
|
| 21 |
+
"n_refs": 8,
|
| 22 |
+
"token_acc_mean": 0.0328826904296875,
|
| 23 |
+
"token_acc_min": 0.015625,
|
| 24 |
+
"token_acc_max": 0.0576171875,
|
| 25 |
+
"exact_acc": 0.0,
|
| 26 |
+
"exact_count": 0,
|
| 27 |
+
"exact_ref_coverage": 0.0,
|
| 28 |
+
"exact_ref_count": 0,
|
| 29 |
+
"exact_ref_hits": [],
|
| 30 |
+
"best_ref_idx": [
|
| 31 |
+
5,
|
| 32 |
+
2,
|
| 33 |
+
5,
|
| 34 |
+
5,
|
| 35 |
+
5,
|
| 36 |
+
5,
|
| 37 |
+
5,
|
| 38 |
+
5,
|
| 39 |
+
5,
|
| 40 |
+
5,
|
| 41 |
+
5,
|
| 42 |
+
5,
|
| 43 |
+
5,
|
| 44 |
+
5,
|
| 45 |
+
5,
|
| 46 |
+
5,
|
| 47 |
+
5,
|
| 48 |
+
5,
|
| 49 |
+
5,
|
| 50 |
+
5,
|
| 51 |
+
5,
|
| 52 |
+
5,
|
| 53 |
+
5,
|
| 54 |
+
5,
|
| 55 |
+
5,
|
| 56 |
+
5,
|
| 57 |
+
5,
|
| 58 |
+
5,
|
| 59 |
+
5,
|
| 60 |
+
5,
|
| 61 |
+
5,
|
| 62 |
+
5,
|
| 63 |
+
5,
|
| 64 |
+
5,
|
| 65 |
+
5,
|
| 66 |
+
5,
|
| 67 |
+
2,
|
| 68 |
+
5,
|
| 69 |
+
5,
|
| 70 |
+
5,
|
| 71 |
+
5,
|
| 72 |
+
5,
|
| 73 |
+
5,
|
| 74 |
+
5,
|
| 75 |
+
5,
|
| 76 |
+
5,
|
| 77 |
+
5,
|
| 78 |
+
5,
|
| 79 |
+
5,
|
| 80 |
+
5,
|
| 81 |
+
5,
|
| 82 |
+
5,
|
| 83 |
+
5,
|
| 84 |
+
5,
|
| 85 |
+
5,
|
| 86 |
+
5,
|
| 87 |
+
5,
|
| 88 |
+
5,
|
| 89 |
+
5,
|
| 90 |
+
5,
|
| 91 |
+
5,
|
| 92 |
+
5,
|
| 93 |
+
5,
|
| 94 |
+
5
|
| 95 |
+
],
|
| 96 |
+
"best_token_acc": [
|
| 97 |
+
0.037109375,
|
| 98 |
+
0.017578125,
|
| 99 |
+
0.0185546875,
|
| 100 |
+
0.041015625,
|
| 101 |
+
0.0283203125,
|
| 102 |
+
0.029296875,
|
| 103 |
+
0.0234375,
|
| 104 |
+
0.0302734375,
|
| 105 |
+
0.025390625,
|
| 106 |
+
0.0322265625,
|
| 107 |
+
0.0341796875,
|
| 108 |
+
0.0400390625,
|
| 109 |
+
0.0263671875,
|
| 110 |
+
0.025390625,
|
| 111 |
+
0.0419921875,
|
| 112 |
+
0.0263671875,
|
| 113 |
+
0.03515625,
|
| 114 |
+
0.0302734375,
|
| 115 |
+
0.025390625,
|
| 116 |
+
0.025390625,
|
| 117 |
+
0.021484375,
|
| 118 |
+
0.0302734375,
|
| 119 |
+
0.0341796875,
|
| 120 |
+
0.041015625,
|
| 121 |
+
0.037109375,
|
| 122 |
+
0.0400390625,
|
| 123 |
+
0.0419921875,
|
| 124 |
+
0.037109375,
|
| 125 |
+
0.0302734375,
|
| 126 |
+
0.02734375,
|
| 127 |
+
0.0458984375,
|
| 128 |
+
0.0390625,
|
| 129 |
+
0.03125,
|
| 130 |
+
0.037109375,
|
| 131 |
+
0.015625,
|
| 132 |
+
0.03515625,
|
| 133 |
+
0.015625,
|
| 134 |
+
0.0341796875,
|
| 135 |
+
0.048828125,
|
| 136 |
+
0.041015625,
|
| 137 |
+
0.037109375,
|
| 138 |
+
0.0283203125,
|
| 139 |
+
0.0380859375,
|
| 140 |
+
0.0576171875,
|
| 141 |
+
0.0361328125,
|
| 142 |
+
0.0361328125,
|
| 143 |
+
0.037109375,
|
| 144 |
+
0.0185546875,
|
| 145 |
+
0.037109375,
|
| 146 |
+
0.0224609375,
|
| 147 |
+
0.033203125,
|
| 148 |
+
0.03125,
|
| 149 |
+
0.029296875,
|
| 150 |
+
0.029296875,
|
| 151 |
+
0.033203125,
|
| 152 |
+
0.0400390625,
|
| 153 |
+
0.041015625,
|
| 154 |
+
0.0322265625,
|
| 155 |
+
0.0361328125,
|
| 156 |
+
0.029296875,
|
| 157 |
+
0.0361328125,
|
| 158 |
+
0.04296875,
|
| 159 |
+
0.0439453125,
|
| 160 |
+
0.01953125
|
| 161 |
+
]
|
| 162 |
+
}
|
| 163 |
+
},
|
| 164 |
+
"first_exact_by_run": {}
|
| 165 |
+
}
|
| 166 |
+
RESULT config=p50_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=1000 views=512000 token_acc=0.0329 exact=0/64 exact_refs=0 hits=[]
|
| 167 |
+
[ctx1024-sampleds] train config=p50_rand0_4_unif0_0p25_outwdm1 from=1000 to=2000
|
| 168 |
+
[ctx1024-sampleds] eval config=p50_rand0_4_unif0_0p25_outwdm1 step=2000
|
| 169 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=2000 soft=none
|
| 170 |
+
[decode] max_len=1024 generated=64/64
|
| 171 |
+
{
|
| 172 |
+
"num_rows": 1,
|
| 173 |
+
"best_by_run": {
|
| 174 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 175 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 176 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0002000.pt",
|
| 177 |
+
"ckpt_step": 2000,
|
| 178 |
+
"endpoint_softening": "none",
|
| 179 |
+
"decode_rule": "dirichlet_resample",
|
| 180 |
+
"steps": 128,
|
| 181 |
+
"time_schedule": "logit_normal",
|
| 182 |
+
"model_t_mode": "post",
|
| 183 |
+
"final_from": "state",
|
| 184 |
+
"n_gen": 64,
|
| 185 |
+
"n_refs": 8,
|
| 186 |
+
"token_acc_mean": 0.9068603515625,
|
| 187 |
+
"token_acc_min": 0.0107421875,
|
| 188 |
+
"token_acc_max": 1.0,
|
| 189 |
+
"exact_acc": 0.171875,
|
| 190 |
+
"exact_count": 11,
|
| 191 |
+
"exact_ref_coverage": 0.25,
|
| 192 |
+
"exact_ref_count": 2,
|
| 193 |
+
"exact_ref_hits": [
|
| 194 |
+
2,
|
| 195 |
+
5
|
| 196 |
+
],
|
| 197 |
+
"best_ref_idx": [
|
| 198 |
+
5,
|
| 199 |
+
5,
|
| 200 |
+
1,
|
| 201 |
+
1,
|
| 202 |
+
1,
|
| 203 |
+
5,
|
| 204 |
+
1,
|
| 205 |
+
1,
|
| 206 |
+
5,
|
| 207 |
+
5,
|
| 208 |
+
5,
|
| 209 |
+
2,
|
| 210 |
+
5,
|
| 211 |
+
5,
|
| 212 |
+
5,
|
| 213 |
+
2,
|
| 214 |
+
3,
|
| 215 |
+
5,
|
| 216 |
+
5,
|
| 217 |
+
5,
|
| 218 |
+
3,
|
| 219 |
+
5,
|
| 220 |
+
3,
|
| 221 |
+
1,
|
| 222 |
+
2,
|
| 223 |
+
5,
|
| 224 |
+
1,
|
| 225 |
+
1,
|
| 226 |
+
5,
|
| 227 |
+
5,
|
| 228 |
+
2,
|
| 229 |
+
1,
|
| 230 |
+
5,
|
| 231 |
+
5,
|
| 232 |
+
5,
|
| 233 |
+
2,
|
| 234 |
+
2,
|
| 235 |
+
1,
|
| 236 |
+
2,
|
| 237 |
+
5,
|
| 238 |
+
2,
|
| 239 |
+
5,
|
| 240 |
+
5,
|
| 241 |
+
5,
|
| 242 |
+
5,
|
| 243 |
+
5,
|
| 244 |
+
5,
|
| 245 |
+
1,
|
| 246 |
+
5,
|
| 247 |
+
5,
|
| 248 |
+
5,
|
| 249 |
+
1,
|
| 250 |
+
5,
|
| 251 |
+
5,
|
| 252 |
+
5,
|
| 253 |
+
2,
|
| 254 |
+
5,
|
| 255 |
+
5,
|
| 256 |
+
5,
|
| 257 |
+
2,
|
| 258 |
+
5,
|
| 259 |
+
5,
|
| 260 |
+
5,
|
| 261 |
+
5
|
| 262 |
+
],
|
| 263 |
+
"best_token_acc": [
|
| 264 |
+
0.998046875,
|
| 265 |
+
0.9990234375,
|
| 266 |
+
0.9990234375,
|
| 267 |
+
0.9990234375,
|
| 268 |
+
0.9990234375,
|
| 269 |
+
0.998046875,
|
| 270 |
+
0.9990234375,
|
| 271 |
+
0.998046875,
|
| 272 |
+
0.998046875,
|
| 273 |
+
0.029296875,
|
| 274 |
+
0.029296875,
|
| 275 |
+
0.01171875,
|
| 276 |
+
0.998046875,
|
| 277 |
+
1.0,
|
| 278 |
+
0.9970703125,
|
| 279 |
+
1.0,
|
| 280 |
+
0.9951171875,
|
| 281 |
+
0.9990234375,
|
| 282 |
+
0.998046875,
|
| 283 |
+
0.998046875,
|
| 284 |
+
0.9970703125,
|
| 285 |
+
0.9970703125,
|
| 286 |
+
0.99609375,
|
| 287 |
+
0.9990234375,
|
| 288 |
+
1.0,
|
| 289 |
+
1.0,
|
| 290 |
+
0.9990234375,
|
| 291 |
+
0.9990234375,
|
| 292 |
+
0.998046875,
|
| 293 |
+
0.998046875,
|
| 294 |
+
0.0107421875,
|
| 295 |
+
0.9990234375,
|
| 296 |
+
0.9970703125,
|
| 297 |
+
0.9970703125,
|
| 298 |
+
0.9970703125,
|
| 299 |
+
1.0,
|
| 300 |
+
1.0,
|
| 301 |
+
0.9990234375,
|
| 302 |
+
1.0,
|
| 303 |
+
0.9970703125,
|
| 304 |
+
1.0,
|
| 305 |
+
0.998046875,
|
| 306 |
+
0.998046875,
|
| 307 |
+
0.9990234375,
|
| 308 |
+
0.998046875,
|
| 309 |
+
0.9990234375,
|
| 310 |
+
0.998046875,
|
| 311 |
+
0.9990234375,
|
| 312 |
+
0.9990234375,
|
| 313 |
+
0.998046875,
|
| 314 |
+
0.9990234375,
|
| 315 |
+
0.0126953125,
|
| 316 |
+
0.029296875,
|
| 317 |
+
0.9990234375,
|
| 318 |
+
0.998046875,
|
| 319 |
+
1.0,
|
| 320 |
+
0.9990234375,
|
| 321 |
+
0.9990234375,
|
| 322 |
+
0.998046875,
|
| 323 |
+
1.0,
|
| 324 |
+
0.998046875,
|
| 325 |
+
1.0,
|
| 326 |
+
0.998046875,
|
| 327 |
+
0.9990234375
|
| 328 |
+
]
|
| 329 |
+
}
|
| 330 |
+
},
|
| 331 |
+
"first_exact_by_run": {
|
| 332 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 333 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 334 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0002000.pt",
|
| 335 |
+
"ckpt_step": 2000,
|
| 336 |
+
"endpoint_softening": "none",
|
| 337 |
+
"decode_rule": "dirichlet_resample",
|
| 338 |
+
"steps": 128,
|
| 339 |
+
"time_schedule": "logit_normal",
|
| 340 |
+
"model_t_mode": "post",
|
| 341 |
+
"final_from": "state",
|
| 342 |
+
"n_gen": 64,
|
| 343 |
+
"n_refs": 8,
|
| 344 |
+
"token_acc_mean": 0.9068603515625,
|
| 345 |
+
"token_acc_min": 0.0107421875,
|
| 346 |
+
"token_acc_max": 1.0,
|
| 347 |
+
"exact_acc": 0.171875,
|
| 348 |
+
"exact_count": 11,
|
| 349 |
+
"exact_ref_coverage": 0.25,
|
| 350 |
+
"exact_ref_count": 2,
|
| 351 |
+
"exact_ref_hits": [
|
| 352 |
+
2,
|
| 353 |
+
5
|
| 354 |
+
],
|
| 355 |
+
"best_ref_idx": [
|
| 356 |
+
5,
|
| 357 |
+
5,
|
| 358 |
+
1,
|
| 359 |
+
1,
|
| 360 |
+
1,
|
| 361 |
+
5,
|
| 362 |
+
1,
|
| 363 |
+
1,
|
| 364 |
+
5,
|
| 365 |
+
5,
|
| 366 |
+
5,
|
| 367 |
+
2,
|
| 368 |
+
5,
|
| 369 |
+
5,
|
| 370 |
+
5,
|
| 371 |
+
2,
|
| 372 |
+
3,
|
| 373 |
+
5,
|
| 374 |
+
5,
|
| 375 |
+
5,
|
| 376 |
+
3,
|
| 377 |
+
5,
|
| 378 |
+
3,
|
| 379 |
+
1,
|
| 380 |
+
2,
|
| 381 |
+
5,
|
| 382 |
+
1,
|
| 383 |
+
1,
|
| 384 |
+
5,
|
| 385 |
+
5,
|
| 386 |
+
2,
|
| 387 |
+
1,
|
| 388 |
+
5,
|
| 389 |
+
5,
|
| 390 |
+
5,
|
| 391 |
+
2,
|
| 392 |
+
2,
|
| 393 |
+
1,
|
| 394 |
+
2,
|
| 395 |
+
5,
|
| 396 |
+
2,
|
| 397 |
+
5,
|
| 398 |
+
5,
|
| 399 |
+
5,
|
| 400 |
+
5,
|
| 401 |
+
5,
|
| 402 |
+
5,
|
| 403 |
+
1,
|
| 404 |
+
5,
|
| 405 |
+
5,
|
| 406 |
+
5,
|
| 407 |
+
1,
|
| 408 |
+
5,
|
| 409 |
+
5,
|
| 410 |
+
5,
|
| 411 |
+
2,
|
| 412 |
+
5,
|
| 413 |
+
5,
|
| 414 |
+
5,
|
| 415 |
+
2,
|
| 416 |
+
5,
|
| 417 |
+
5,
|
| 418 |
+
5,
|
| 419 |
+
5
|
| 420 |
+
],
|
| 421 |
+
"best_token_acc": [
|
| 422 |
+
0.998046875,
|
| 423 |
+
0.9990234375,
|
| 424 |
+
0.9990234375,
|
| 425 |
+
0.9990234375,
|
| 426 |
+
0.9990234375,
|
| 427 |
+
0.998046875,
|
| 428 |
+
0.9990234375,
|
| 429 |
+
0.998046875,
|
| 430 |
+
0.998046875,
|
| 431 |
+
0.029296875,
|
| 432 |
+
0.029296875,
|
| 433 |
+
0.01171875,
|
| 434 |
+
0.998046875,
|
| 435 |
+
1.0,
|
| 436 |
+
0.9970703125,
|
| 437 |
+
1.0,
|
| 438 |
+
0.9951171875,
|
| 439 |
+
0.9990234375,
|
| 440 |
+
0.998046875,
|
| 441 |
+
0.998046875,
|
| 442 |
+
0.9970703125,
|
| 443 |
+
0.9970703125,
|
| 444 |
+
0.99609375,
|
| 445 |
+
0.9990234375,
|
| 446 |
+
1.0,
|
| 447 |
+
1.0,
|
| 448 |
+
0.9990234375,
|
| 449 |
+
0.9990234375,
|
| 450 |
+
0.998046875,
|
| 451 |
+
0.998046875,
|
| 452 |
+
0.0107421875,
|
| 453 |
+
0.9990234375,
|
| 454 |
+
0.9970703125,
|
| 455 |
+
0.9970703125,
|
| 456 |
+
0.9970703125,
|
| 457 |
+
1.0,
|
| 458 |
+
1.0,
|
| 459 |
+
0.9990234375,
|
| 460 |
+
1.0,
|
| 461 |
+
0.9970703125,
|
| 462 |
+
1.0,
|
| 463 |
+
0.998046875,
|
| 464 |
+
0.998046875,
|
| 465 |
+
0.9990234375,
|
| 466 |
+
0.998046875,
|
| 467 |
+
0.9990234375,
|
| 468 |
+
0.998046875,
|
| 469 |
+
0.9990234375,
|
| 470 |
+
0.9990234375,
|
| 471 |
+
0.998046875,
|
| 472 |
+
0.9990234375,
|
| 473 |
+
0.0126953125,
|
| 474 |
+
0.029296875,
|
| 475 |
+
0.9990234375,
|
| 476 |
+
0.998046875,
|
| 477 |
+
1.0,
|
| 478 |
+
0.9990234375,
|
| 479 |
+
0.9990234375,
|
| 480 |
+
0.998046875,
|
| 481 |
+
1.0,
|
| 482 |
+
0.998046875,
|
| 483 |
+
1.0,
|
| 484 |
+
0.998046875,
|
| 485 |
+
0.9990234375
|
| 486 |
+
]
|
| 487 |
+
}
|
| 488 |
+
}
|
| 489 |
+
}
|
| 490 |
+
RESULT config=p50_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=2000 views=1024000 token_acc=0.9069 exact=11/64 exact_refs=2 hits=[2, 5]
|
| 491 |
+
[ctx1024-sampleds] train config=p50_rand0_4_unif0_0p25_outwdm1 from=2000 to=3000
|
| 492 |
+
[ctx1024-sampleds] eval config=p50_rand0_4_unif0_0p25_outwdm1 step=3000
|
| 493 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=3000 soft=none
|
| 494 |
+
[decode] max_len=1024 generated=64/64
|
| 495 |
+
{
|
| 496 |
+
"num_rows": 1,
|
| 497 |
+
"best_by_run": {
|
| 498 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 499 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 500 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0003000.pt",
|
| 501 |
+
"ckpt_step": 3000,
|
| 502 |
+
"endpoint_softening": "none",
|
| 503 |
+
"decode_rule": "dirichlet_resample",
|
| 504 |
+
"steps": 128,
|
| 505 |
+
"time_schedule": "logit_normal",
|
| 506 |
+
"model_t_mode": "post",
|
| 507 |
+
"final_from": "state",
|
| 508 |
+
"n_gen": 64,
|
| 509 |
+
"n_refs": 8,
|
| 510 |
+
"token_acc_mean": 0.999725341796875,
|
| 511 |
+
"token_acc_min": 0.998046875,
|
| 512 |
+
"token_acc_max": 1.0,
|
| 513 |
+
"exact_acc": 0.734375,
|
| 514 |
+
"exact_count": 47,
|
| 515 |
+
"exact_ref_coverage": 0.25,
|
| 516 |
+
"exact_ref_count": 2,
|
| 517 |
+
"exact_ref_hits": [
|
| 518 |
+
2,
|
| 519 |
+
5
|
| 520 |
+
],
|
| 521 |
+
"best_ref_idx": [
|
| 522 |
+
2,
|
| 523 |
+
1,
|
| 524 |
+
1,
|
| 525 |
+
2,
|
| 526 |
+
5,
|
| 527 |
+
5,
|
| 528 |
+
5,
|
| 529 |
+
2,
|
| 530 |
+
2,
|
| 531 |
+
2,
|
| 532 |
+
2,
|
| 533 |
+
2,
|
| 534 |
+
2,
|
| 535 |
+
2,
|
| 536 |
+
2,
|
| 537 |
+
5,
|
| 538 |
+
2,
|
| 539 |
+
2,
|
| 540 |
+
2,
|
| 541 |
+
2,
|
| 542 |
+
2,
|
| 543 |
+
2,
|
| 544 |
+
1,
|
| 545 |
+
2,
|
| 546 |
+
5,
|
| 547 |
+
2,
|
| 548 |
+
2,
|
| 549 |
+
5,
|
| 550 |
+
2,
|
| 551 |
+
2,
|
| 552 |
+
2,
|
| 553 |
+
2,
|
| 554 |
+
2,
|
| 555 |
+
2,
|
| 556 |
+
2,
|
| 557 |
+
5,
|
| 558 |
+
2,
|
| 559 |
+
2,
|
| 560 |
+
2,
|
| 561 |
+
2,
|
| 562 |
+
2,
|
| 563 |
+
2,
|
| 564 |
+
2,
|
| 565 |
+
2,
|
| 566 |
+
2,
|
| 567 |
+
2,
|
| 568 |
+
5,
|
| 569 |
+
2,
|
| 570 |
+
5,
|
| 571 |
+
5,
|
| 572 |
+
5,
|
| 573 |
+
2,
|
| 574 |
+
2,
|
| 575 |
+
1,
|
| 576 |
+
2,
|
| 577 |
+
2,
|
| 578 |
+
2,
|
| 579 |
+
1,
|
| 580 |
+
5,
|
| 581 |
+
7,
|
| 582 |
+
5,
|
| 583 |
+
5,
|
| 584 |
+
2,
|
| 585 |
+
2
|
| 586 |
+
],
|
| 587 |
+
"best_token_acc": [
|
| 588 |
+
1.0,
|
| 589 |
+
0.9990234375,
|
| 590 |
+
0.998046875,
|
| 591 |
+
1.0,
|
| 592 |
+
0.9990234375,
|
| 593 |
+
0.9990234375,
|
| 594 |
+
0.9990234375,
|
| 595 |
+
1.0,
|
| 596 |
+
1.0,
|
| 597 |
+
0.9990234375,
|
| 598 |
+
1.0,
|
| 599 |
+
1.0,
|
| 600 |
+
1.0,
|
| 601 |
+
1.0,
|
| 602 |
+
1.0,
|
| 603 |
+
0.9990234375,
|
| 604 |
+
1.0,
|
| 605 |
+
1.0,
|
| 606 |
+
1.0,
|
| 607 |
+
1.0,
|
| 608 |
+
1.0,
|
| 609 |
+
1.0,
|
| 610 |
+
0.9990234375,
|
| 611 |
+
1.0,
|
| 612 |
+
0.9990234375,
|
| 613 |
+
1.0,
|
| 614 |
+
1.0,
|
| 615 |
+
0.9990234375,
|
| 616 |
+
1.0,
|
| 617 |
+
1.0,
|
| 618 |
+
1.0,
|
| 619 |
+
1.0,
|
| 620 |
+
1.0,
|
| 621 |
+
1.0,
|
| 622 |
+
1.0,
|
| 623 |
+
1.0,
|
| 624 |
+
1.0,
|
| 625 |
+
1.0,
|
| 626 |
+
1.0,
|
| 627 |
+
1.0,
|
| 628 |
+
1.0,
|
| 629 |
+
1.0,
|
| 630 |
+
1.0,
|
| 631 |
+
1.0,
|
| 632 |
+
1.0,
|
| 633 |
+
1.0,
|
| 634 |
+
0.9990234375,
|
| 635 |
+
1.0,
|
| 636 |
+
1.0,
|
| 637 |
+
0.9990234375,
|
| 638 |
+
0.9990234375,
|
| 639 |
+
1.0,
|
| 640 |
+
1.0,
|
| 641 |
+
0.9990234375,
|
| 642 |
+
1.0,
|
| 643 |
+
1.0,
|
| 644 |
+
1.0,
|
| 645 |
+
0.9990234375,
|
| 646 |
+
1.0,
|
| 647 |
+
0.9990234375,
|
| 648 |
+
1.0,
|
| 649 |
+
0.9990234375,
|
| 650 |
+
1.0,
|
| 651 |
+
1.0
|
| 652 |
+
]
|
| 653 |
+
}
|
| 654 |
+
},
|
| 655 |
+
"first_exact_by_run": {
|
| 656 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 657 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 658 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0003000.pt",
|
| 659 |
+
"ckpt_step": 3000,
|
| 660 |
+
"endpoint_softening": "none",
|
| 661 |
+
"decode_rule": "dirichlet_resample",
|
| 662 |
+
"steps": 128,
|
| 663 |
+
"time_schedule": "logit_normal",
|
| 664 |
+
"model_t_mode": "post",
|
| 665 |
+
"final_from": "state",
|
| 666 |
+
"n_gen": 64,
|
| 667 |
+
"n_refs": 8,
|
| 668 |
+
"token_acc_mean": 0.999725341796875,
|
| 669 |
+
"token_acc_min": 0.998046875,
|
| 670 |
+
"token_acc_max": 1.0,
|
| 671 |
+
"exact_acc": 0.734375,
|
| 672 |
+
"exact_count": 47,
|
| 673 |
+
"exact_ref_coverage": 0.25,
|
| 674 |
+
"exact_ref_count": 2,
|
| 675 |
+
"exact_ref_hits": [
|
| 676 |
+
2,
|
| 677 |
+
5
|
| 678 |
+
],
|
| 679 |
+
"best_ref_idx": [
|
| 680 |
+
2,
|
| 681 |
+
1,
|
| 682 |
+
1,
|
| 683 |
+
2,
|
| 684 |
+
5,
|
| 685 |
+
5,
|
| 686 |
+
5,
|
| 687 |
+
2,
|
| 688 |
+
2,
|
| 689 |
+
2,
|
| 690 |
+
2,
|
| 691 |
+
2,
|
| 692 |
+
2,
|
| 693 |
+
2,
|
| 694 |
+
2,
|
| 695 |
+
5,
|
| 696 |
+
2,
|
| 697 |
+
2,
|
| 698 |
+
2,
|
| 699 |
+
2,
|
| 700 |
+
2,
|
| 701 |
+
2,
|
| 702 |
+
1,
|
| 703 |
+
2,
|
| 704 |
+
5,
|
| 705 |
+
2,
|
| 706 |
+
2,
|
| 707 |
+
5,
|
| 708 |
+
2,
|
| 709 |
+
2,
|
| 710 |
+
2,
|
| 711 |
+
2,
|
| 712 |
+
2,
|
| 713 |
+
2,
|
| 714 |
+
2,
|
| 715 |
+
5,
|
| 716 |
+
2,
|
| 717 |
+
2,
|
| 718 |
+
2,
|
| 719 |
+
2,
|
| 720 |
+
2,
|
| 721 |
+
2,
|
| 722 |
+
2,
|
| 723 |
+
2,
|
| 724 |
+
2,
|
| 725 |
+
2,
|
| 726 |
+
5,
|
| 727 |
+
2,
|
| 728 |
+
5,
|
| 729 |
+
5,
|
| 730 |
+
5,
|
| 731 |
+
2,
|
| 732 |
+
2,
|
| 733 |
+
1,
|
| 734 |
+
2,
|
| 735 |
+
2,
|
| 736 |
+
2,
|
| 737 |
+
1,
|
| 738 |
+
5,
|
| 739 |
+
7,
|
| 740 |
+
5,
|
| 741 |
+
5,
|
| 742 |
+
2,
|
| 743 |
+
2
|
| 744 |
+
],
|
| 745 |
+
"best_token_acc": [
|
| 746 |
+
1.0,
|
| 747 |
+
0.9990234375,
|
| 748 |
+
0.998046875,
|
| 749 |
+
1.0,
|
| 750 |
+
0.9990234375,
|
| 751 |
+
0.9990234375,
|
| 752 |
+
0.9990234375,
|
| 753 |
+
1.0,
|
| 754 |
+
1.0,
|
| 755 |
+
0.9990234375,
|
| 756 |
+
1.0,
|
| 757 |
+
1.0,
|
| 758 |
+
1.0,
|
| 759 |
+
1.0,
|
| 760 |
+
1.0,
|
| 761 |
+
0.9990234375,
|
| 762 |
+
1.0,
|
| 763 |
+
1.0,
|
| 764 |
+
1.0,
|
| 765 |
+
1.0,
|
| 766 |
+
1.0,
|
| 767 |
+
1.0,
|
| 768 |
+
0.9990234375,
|
| 769 |
+
1.0,
|
| 770 |
+
0.9990234375,
|
| 771 |
+
1.0,
|
| 772 |
+
1.0,
|
| 773 |
+
0.9990234375,
|
| 774 |
+
1.0,
|
| 775 |
+
1.0,
|
| 776 |
+
1.0,
|
| 777 |
+
1.0,
|
| 778 |
+
1.0,
|
| 779 |
+
1.0,
|
| 780 |
+
1.0,
|
| 781 |
+
1.0,
|
| 782 |
+
1.0,
|
| 783 |
+
1.0,
|
| 784 |
+
1.0,
|
| 785 |
+
1.0,
|
| 786 |
+
1.0,
|
| 787 |
+
1.0,
|
| 788 |
+
1.0,
|
| 789 |
+
1.0,
|
| 790 |
+
1.0,
|
| 791 |
+
1.0,
|
| 792 |
+
0.9990234375,
|
| 793 |
+
1.0,
|
| 794 |
+
1.0,
|
| 795 |
+
0.9990234375,
|
| 796 |
+
0.9990234375,
|
| 797 |
+
1.0,
|
| 798 |
+
1.0,
|
| 799 |
+
0.9990234375,
|
| 800 |
+
1.0,
|
| 801 |
+
1.0,
|
| 802 |
+
1.0,
|
| 803 |
+
0.9990234375,
|
| 804 |
+
1.0,
|
| 805 |
+
0.9990234375,
|
| 806 |
+
1.0,
|
| 807 |
+
0.9990234375,
|
| 808 |
+
1.0,
|
| 809 |
+
1.0
|
| 810 |
+
]
|
| 811 |
+
}
|
| 812 |
+
}
|
| 813 |
+
}
|
| 814 |
+
RESULT config=p50_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=3000 views=1536000 token_acc=0.9997 exact=47/64 exact_refs=2 hits=[2, 5]
|
| 815 |
+
[ctx1024-sampleds] train config=p50_rand0_4_unif0_0p25_outwdm1 from=3000 to=4000
|
| 816 |
+
[ctx1024-sampleds] eval config=p50_rand0_4_unif0_0p25_outwdm1 step=4000
|
| 817 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=4000 soft=none
|
| 818 |
+
[decode] max_len=1024 generated=64/64
|
| 819 |
+
{
|
| 820 |
+
"num_rows": 1,
|
| 821 |
+
"best_by_run": {
|
| 822 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 823 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 824 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0004000.pt",
|
| 825 |
+
"ckpt_step": 4000,
|
| 826 |
+
"endpoint_softening": "none",
|
| 827 |
+
"decode_rule": "dirichlet_resample",
|
| 828 |
+
"steps": 128,
|
| 829 |
+
"time_schedule": "logit_normal",
|
| 830 |
+
"model_t_mode": "post",
|
| 831 |
+
"final_from": "state",
|
| 832 |
+
"n_gen": 64,
|
| 833 |
+
"n_refs": 8,
|
| 834 |
+
"token_acc_mean": 0.99932861328125,
|
| 835 |
+
"token_acc_min": 0.9970703125,
|
| 836 |
+
"token_acc_max": 1.0,
|
| 837 |
+
"exact_acc": 0.578125,
|
| 838 |
+
"exact_count": 37,
|
| 839 |
+
"exact_ref_coverage": 0.75,
|
| 840 |
+
"exact_ref_count": 6,
|
| 841 |
+
"exact_ref_hits": [
|
| 842 |
+
1,
|
| 843 |
+
2,
|
| 844 |
+
3,
|
| 845 |
+
4,
|
| 846 |
+
5,
|
| 847 |
+
7
|
| 848 |
+
],
|
| 849 |
+
"best_ref_idx": [
|
| 850 |
+
5,
|
| 851 |
+
5,
|
| 852 |
+
5,
|
| 853 |
+
1,
|
| 854 |
+
4,
|
| 855 |
+
1,
|
| 856 |
+
1,
|
| 857 |
+
5,
|
| 858 |
+
7,
|
| 859 |
+
5,
|
| 860 |
+
5,
|
| 861 |
+
5,
|
| 862 |
+
1,
|
| 863 |
+
4,
|
| 864 |
+
5,
|
| 865 |
+
5,
|
| 866 |
+
7,
|
| 867 |
+
3,
|
| 868 |
+
2,
|
| 869 |
+
5,
|
| 870 |
+
7,
|
| 871 |
+
2,
|
| 872 |
+
1,
|
| 873 |
+
4,
|
| 874 |
+
1,
|
| 875 |
+
1,
|
| 876 |
+
5,
|
| 877 |
+
5,
|
| 878 |
+
4,
|
| 879 |
+
5,
|
| 880 |
+
5,
|
| 881 |
+
2,
|
| 882 |
+
2,
|
| 883 |
+
5,
|
| 884 |
+
1,
|
| 885 |
+
1,
|
| 886 |
+
3,
|
| 887 |
+
5,
|
| 888 |
+
4,
|
| 889 |
+
5,
|
| 890 |
+
5,
|
| 891 |
+
5,
|
| 892 |
+
1,
|
| 893 |
+
4,
|
| 894 |
+
1,
|
| 895 |
+
5,
|
| 896 |
+
3,
|
| 897 |
+
5,
|
| 898 |
+
1,
|
| 899 |
+
4,
|
| 900 |
+
5,
|
| 901 |
+
5,
|
| 902 |
+
5,
|
| 903 |
+
3,
|
| 904 |
+
1,
|
| 905 |
+
5,
|
| 906 |
+
5,
|
| 907 |
+
5,
|
| 908 |
+
3,
|
| 909 |
+
4,
|
| 910 |
+
1,
|
| 911 |
+
7,
|
| 912 |
+
1,
|
| 913 |
+
1
|
| 914 |
+
],
|
| 915 |
+
"best_token_acc": [
|
| 916 |
+
0.9990234375,
|
| 917 |
+
0.998046875,
|
| 918 |
+
0.998046875,
|
| 919 |
+
1.0,
|
| 920 |
+
1.0,
|
| 921 |
+
1.0,
|
| 922 |
+
1.0,
|
| 923 |
+
0.998046875,
|
| 924 |
+
1.0,
|
| 925 |
+
0.9990234375,
|
| 926 |
+
0.998046875,
|
| 927 |
+
0.998046875,
|
| 928 |
+
1.0,
|
| 929 |
+
1.0,
|
| 930 |
+
0.998046875,
|
| 931 |
+
0.9990234375,
|
| 932 |
+
1.0,
|
| 933 |
+
1.0,
|
| 934 |
+
1.0,
|
| 935 |
+
0.998046875,
|
| 936 |
+
1.0,
|
| 937 |
+
1.0,
|
| 938 |
+
1.0,
|
| 939 |
+
1.0,
|
| 940 |
+
1.0,
|
| 941 |
+
1.0,
|
| 942 |
+
0.9990234375,
|
| 943 |
+
0.998046875,
|
| 944 |
+
1.0,
|
| 945 |
+
0.998046875,
|
| 946 |
+
0.998046875,
|
| 947 |
+
1.0,
|
| 948 |
+
1.0,
|
| 949 |
+
0.998046875,
|
| 950 |
+
1.0,
|
| 951 |
+
1.0,
|
| 952 |
+
1.0,
|
| 953 |
+
0.9990234375,
|
| 954 |
+
1.0,
|
| 955 |
+
0.998046875,
|
| 956 |
+
0.9990234375,
|
| 957 |
+
0.998046875,
|
| 958 |
+
1.0,
|
| 959 |
+
1.0,
|
| 960 |
+
1.0,
|
| 961 |
+
0.9990234375,
|
| 962 |
+
1.0,
|
| 963 |
+
1.0,
|
| 964 |
+
1.0,
|
| 965 |
+
1.0,
|
| 966 |
+
0.9990234375,
|
| 967 |
+
0.9970703125,
|
| 968 |
+
0.9990234375,
|
| 969 |
+
1.0,
|
| 970 |
+
1.0,
|
| 971 |
+
0.9990234375,
|
| 972 |
+
0.998046875,
|
| 973 |
+
0.998046875,
|
| 974 |
+
1.0,
|
| 975 |
+
1.0,
|
| 976 |
+
1.0,
|
| 977 |
+
0.9990234375,
|
| 978 |
+
1.0,
|
| 979 |
+
1.0
|
| 980 |
+
]
|
| 981 |
+
}
|
| 982 |
+
},
|
| 983 |
+
"first_exact_by_run": {
|
| 984 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 985 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 986 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0004000.pt",
|
| 987 |
+
"ckpt_step": 4000,
|
| 988 |
+
"endpoint_softening": "none",
|
| 989 |
+
"decode_rule": "dirichlet_resample",
|
| 990 |
+
"steps": 128,
|
| 991 |
+
"time_schedule": "logit_normal",
|
| 992 |
+
"model_t_mode": "post",
|
| 993 |
+
"final_from": "state",
|
| 994 |
+
"n_gen": 64,
|
| 995 |
+
"n_refs": 8,
|
| 996 |
+
"token_acc_mean": 0.99932861328125,
|
| 997 |
+
"token_acc_min": 0.9970703125,
|
| 998 |
+
"token_acc_max": 1.0,
|
| 999 |
+
"exact_acc": 0.578125,
|
| 1000 |
+
"exact_count": 37,
|
| 1001 |
+
"exact_ref_coverage": 0.75,
|
| 1002 |
+
"exact_ref_count": 6,
|
| 1003 |
+
"exact_ref_hits": [
|
| 1004 |
+
1,
|
| 1005 |
+
2,
|
| 1006 |
+
3,
|
| 1007 |
+
4,
|
| 1008 |
+
5,
|
| 1009 |
+
7
|
| 1010 |
+
],
|
| 1011 |
+
"best_ref_idx": [
|
| 1012 |
+
5,
|
| 1013 |
+
5,
|
| 1014 |
+
5,
|
| 1015 |
+
1,
|
| 1016 |
+
4,
|
| 1017 |
+
1,
|
| 1018 |
+
1,
|
| 1019 |
+
5,
|
| 1020 |
+
7,
|
| 1021 |
+
5,
|
| 1022 |
+
5,
|
| 1023 |
+
5,
|
| 1024 |
+
1,
|
| 1025 |
+
4,
|
| 1026 |
+
5,
|
| 1027 |
+
5,
|
| 1028 |
+
7,
|
| 1029 |
+
3,
|
| 1030 |
+
2,
|
| 1031 |
+
5,
|
| 1032 |
+
7,
|
| 1033 |
+
2,
|
| 1034 |
+
1,
|
| 1035 |
+
4,
|
| 1036 |
+
1,
|
| 1037 |
+
1,
|
| 1038 |
+
5,
|
| 1039 |
+
5,
|
| 1040 |
+
4,
|
| 1041 |
+
5,
|
| 1042 |
+
5,
|
| 1043 |
+
2,
|
| 1044 |
+
2,
|
| 1045 |
+
5,
|
| 1046 |
+
1,
|
| 1047 |
+
1,
|
| 1048 |
+
3,
|
| 1049 |
+
5,
|
| 1050 |
+
4,
|
| 1051 |
+
5,
|
| 1052 |
+
5,
|
| 1053 |
+
5,
|
| 1054 |
+
1,
|
| 1055 |
+
4,
|
| 1056 |
+
1,
|
| 1057 |
+
5,
|
| 1058 |
+
3,
|
| 1059 |
+
5,
|
| 1060 |
+
1,
|
| 1061 |
+
4,
|
| 1062 |
+
5,
|
| 1063 |
+
5,
|
| 1064 |
+
5,
|
| 1065 |
+
3,
|
| 1066 |
+
1,
|
| 1067 |
+
5,
|
| 1068 |
+
5,
|
| 1069 |
+
5,
|
| 1070 |
+
3,
|
| 1071 |
+
4,
|
| 1072 |
+
1,
|
| 1073 |
+
7,
|
| 1074 |
+
1,
|
| 1075 |
+
1
|
| 1076 |
+
],
|
| 1077 |
+
"best_token_acc": [
|
| 1078 |
+
0.9990234375,
|
| 1079 |
+
0.998046875,
|
| 1080 |
+
0.998046875,
|
| 1081 |
+
1.0,
|
| 1082 |
+
1.0,
|
| 1083 |
+
1.0,
|
| 1084 |
+
1.0,
|
| 1085 |
+
0.998046875,
|
| 1086 |
+
1.0,
|
| 1087 |
+
0.9990234375,
|
| 1088 |
+
0.998046875,
|
| 1089 |
+
0.998046875,
|
| 1090 |
+
1.0,
|
| 1091 |
+
1.0,
|
| 1092 |
+
0.998046875,
|
| 1093 |
+
0.9990234375,
|
| 1094 |
+
1.0,
|
| 1095 |
+
1.0,
|
| 1096 |
+
1.0,
|
| 1097 |
+
0.998046875,
|
| 1098 |
+
1.0,
|
| 1099 |
+
1.0,
|
| 1100 |
+
1.0,
|
| 1101 |
+
1.0,
|
| 1102 |
+
1.0,
|
| 1103 |
+
1.0,
|
| 1104 |
+
0.9990234375,
|
| 1105 |
+
0.998046875,
|
| 1106 |
+
1.0,
|
| 1107 |
+
0.998046875,
|
| 1108 |
+
0.998046875,
|
| 1109 |
+
1.0,
|
| 1110 |
+
1.0,
|
| 1111 |
+
0.998046875,
|
| 1112 |
+
1.0,
|
| 1113 |
+
1.0,
|
| 1114 |
+
1.0,
|
| 1115 |
+
0.9990234375,
|
| 1116 |
+
1.0,
|
| 1117 |
+
0.998046875,
|
| 1118 |
+
0.9990234375,
|
| 1119 |
+
0.998046875,
|
| 1120 |
+
1.0,
|
| 1121 |
+
1.0,
|
| 1122 |
+
1.0,
|
| 1123 |
+
0.9990234375,
|
| 1124 |
+
1.0,
|
| 1125 |
+
1.0,
|
| 1126 |
+
1.0,
|
| 1127 |
+
1.0,
|
| 1128 |
+
0.9990234375,
|
| 1129 |
+
0.9970703125,
|
| 1130 |
+
0.9990234375,
|
| 1131 |
+
1.0,
|
| 1132 |
+
1.0,
|
| 1133 |
+
0.9990234375,
|
| 1134 |
+
0.998046875,
|
| 1135 |
+
0.998046875,
|
| 1136 |
+
1.0,
|
| 1137 |
+
1.0,
|
| 1138 |
+
1.0,
|
| 1139 |
+
0.9990234375,
|
| 1140 |
+
1.0,
|
| 1141 |
+
1.0
|
| 1142 |
+
]
|
| 1143 |
+
}
|
| 1144 |
+
}
|
| 1145 |
+
}
|
| 1146 |
+
RESULT config=p50_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=4000 views=2048000 token_acc=0.9993 exact=37/64 exact_refs=6 hits=[1, 2, 3, 4, 5, 7]
|
| 1147 |
+
[ctx1024-sampleds] train config=p50_rand0_4_unif0_0p25_outwdm1 from=4000 to=5000
|
| 1148 |
+
[ctx1024-sampleds] eval config=p50_rand0_4_unif0_0p25_outwdm1 step=5000
|
| 1149 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=5000 soft=none
|
| 1150 |
+
[decode] max_len=1024 generated=64/64
|
| 1151 |
+
{
|
| 1152 |
+
"num_rows": 1,
|
| 1153 |
+
"best_by_run": {
|
| 1154 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1155 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1156 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0005000.pt",
|
| 1157 |
+
"ckpt_step": 5000,
|
| 1158 |
+
"endpoint_softening": "none",
|
| 1159 |
+
"decode_rule": "dirichlet_resample",
|
| 1160 |
+
"steps": 128,
|
| 1161 |
+
"time_schedule": "logit_normal",
|
| 1162 |
+
"model_t_mode": "post",
|
| 1163 |
+
"final_from": "state",
|
| 1164 |
+
"n_gen": 64,
|
| 1165 |
+
"n_refs": 8,
|
| 1166 |
+
"token_acc_mean": 0.9999237060546875,
|
| 1167 |
+
"token_acc_min": 0.9990234375,
|
| 1168 |
+
"token_acc_max": 1.0,
|
| 1169 |
+
"exact_acc": 0.921875,
|
| 1170 |
+
"exact_count": 59,
|
| 1171 |
+
"exact_ref_coverage": 0.75,
|
| 1172 |
+
"exact_ref_count": 6,
|
| 1173 |
+
"exact_ref_hits": [
|
| 1174 |
+
1,
|
| 1175 |
+
2,
|
| 1176 |
+
3,
|
| 1177 |
+
4,
|
| 1178 |
+
5,
|
| 1179 |
+
7
|
| 1180 |
+
],
|
| 1181 |
+
"best_ref_idx": [
|
| 1182 |
+
7,
|
| 1183 |
+
5,
|
| 1184 |
+
1,
|
| 1185 |
+
5,
|
| 1186 |
+
2,
|
| 1187 |
+
3,
|
| 1188 |
+
2,
|
| 1189 |
+
3,
|
| 1190 |
+
2,
|
| 1191 |
+
2,
|
| 1192 |
+
3,
|
| 1193 |
+
3,
|
| 1194 |
+
2,
|
| 1195 |
+
3,
|
| 1196 |
+
3,
|
| 1197 |
+
2,
|
| 1198 |
+
1,
|
| 1199 |
+
2,
|
| 1200 |
+
1,
|
| 1201 |
+
2,
|
| 1202 |
+
2,
|
| 1203 |
+
3,
|
| 1204 |
+
2,
|
| 1205 |
+
1,
|
| 1206 |
+
2,
|
| 1207 |
+
3,
|
| 1208 |
+
3,
|
| 1209 |
+
2,
|
| 1210 |
+
3,
|
| 1211 |
+
2,
|
| 1212 |
+
2,
|
| 1213 |
+
2,
|
| 1214 |
+
5,
|
| 1215 |
+
1,
|
| 1216 |
+
3,
|
| 1217 |
+
3,
|
| 1218 |
+
2,
|
| 1219 |
+
2,
|
| 1220 |
+
2,
|
| 1221 |
+
2,
|
| 1222 |
+
2,
|
| 1223 |
+
2,
|
| 1224 |
+
4,
|
| 1225 |
+
2,
|
| 1226 |
+
2,
|
| 1227 |
+
2,
|
| 1228 |
+
2,
|
| 1229 |
+
2,
|
| 1230 |
+
2,
|
| 1231 |
+
1,
|
| 1232 |
+
2,
|
| 1233 |
+
3,
|
| 1234 |
+
2,
|
| 1235 |
+
2,
|
| 1236 |
+
2,
|
| 1237 |
+
2,
|
| 1238 |
+
5,
|
| 1239 |
+
2,
|
| 1240 |
+
2,
|
| 1241 |
+
2,
|
| 1242 |
+
3,
|
| 1243 |
+
2,
|
| 1244 |
+
2,
|
| 1245 |
+
2
|
| 1246 |
+
],
|
| 1247 |
+
"best_token_acc": [
|
| 1248 |
+
1.0,
|
| 1249 |
+
0.9990234375,
|
| 1250 |
+
1.0,
|
| 1251 |
+
0.9990234375,
|
| 1252 |
+
1.0,
|
| 1253 |
+
1.0,
|
| 1254 |
+
1.0,
|
| 1255 |
+
1.0,
|
| 1256 |
+
1.0,
|
| 1257 |
+
1.0,
|
| 1258 |
+
1.0,
|
| 1259 |
+
1.0,
|
| 1260 |
+
1.0,
|
| 1261 |
+
1.0,
|
| 1262 |
+
1.0,
|
| 1263 |
+
1.0,
|
| 1264 |
+
1.0,
|
| 1265 |
+
1.0,
|
| 1266 |
+
0.9990234375,
|
| 1267 |
+
1.0,
|
| 1268 |
+
1.0,
|
| 1269 |
+
1.0,
|
| 1270 |
+
1.0,
|
| 1271 |
+
1.0,
|
| 1272 |
+
1.0,
|
| 1273 |
+
1.0,
|
| 1274 |
+
1.0,
|
| 1275 |
+
1.0,
|
| 1276 |
+
1.0,
|
| 1277 |
+
1.0,
|
| 1278 |
+
1.0,
|
| 1279 |
+
1.0,
|
| 1280 |
+
0.9990234375,
|
| 1281 |
+
1.0,
|
| 1282 |
+
1.0,
|
| 1283 |
+
1.0,
|
| 1284 |
+
1.0,
|
| 1285 |
+
1.0,
|
| 1286 |
+
1.0,
|
| 1287 |
+
1.0,
|
| 1288 |
+
1.0,
|
| 1289 |
+
1.0,
|
| 1290 |
+
1.0,
|
| 1291 |
+
1.0,
|
| 1292 |
+
1.0,
|
| 1293 |
+
1.0,
|
| 1294 |
+
1.0,
|
| 1295 |
+
1.0,
|
| 1296 |
+
1.0,
|
| 1297 |
+
1.0,
|
| 1298 |
+
0.9990234375,
|
| 1299 |
+
1.0,
|
| 1300 |
+
1.0,
|
| 1301 |
+
1.0,
|
| 1302 |
+
1.0,
|
| 1303 |
+
1.0,
|
| 1304 |
+
1.0,
|
| 1305 |
+
1.0,
|
| 1306 |
+
1.0,
|
| 1307 |
+
1.0,
|
| 1308 |
+
1.0,
|
| 1309 |
+
1.0,
|
| 1310 |
+
1.0,
|
| 1311 |
+
1.0
|
| 1312 |
+
]
|
| 1313 |
+
}
|
| 1314 |
+
},
|
| 1315 |
+
"first_exact_by_run": {
|
| 1316 |
+
"train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1317 |
+
"run": "train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1318 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0005000.pt",
|
| 1319 |
+
"ckpt_step": 5000,
|
| 1320 |
+
"endpoint_softening": "none",
|
| 1321 |
+
"decode_rule": "dirichlet_resample",
|
| 1322 |
+
"steps": 128,
|
| 1323 |
+
"time_schedule": "logit_normal",
|
| 1324 |
+
"model_t_mode": "post",
|
| 1325 |
+
"final_from": "state",
|
| 1326 |
+
"n_gen": 64,
|
| 1327 |
+
"n_refs": 8,
|
| 1328 |
+
"token_acc_mean": 0.9999237060546875,
|
| 1329 |
+
"token_acc_min": 0.9990234375,
|
| 1330 |
+
"token_acc_max": 1.0,
|
| 1331 |
+
"exact_acc": 0.921875,
|
| 1332 |
+
"exact_count": 59,
|
| 1333 |
+
"exact_ref_coverage": 0.75,
|
| 1334 |
+
"exact_ref_count": 6,
|
| 1335 |
+
"exact_ref_hits": [
|
| 1336 |
+
1,
|
| 1337 |
+
2,
|
| 1338 |
+
3,
|
| 1339 |
+
4,
|
| 1340 |
+
5,
|
| 1341 |
+
7
|
| 1342 |
+
],
|
| 1343 |
+
"best_ref_idx": [
|
| 1344 |
+
7,
|
| 1345 |
+
5,
|
| 1346 |
+
1,
|
| 1347 |
+
5,
|
| 1348 |
+
2,
|
| 1349 |
+
3,
|
| 1350 |
+
2,
|
| 1351 |
+
3,
|
| 1352 |
+
2,
|
| 1353 |
+
2,
|
| 1354 |
+
3,
|
| 1355 |
+
3,
|
| 1356 |
+
2,
|
| 1357 |
+
3,
|
| 1358 |
+
3,
|
| 1359 |
+
2,
|
| 1360 |
+
1,
|
| 1361 |
+
2,
|
| 1362 |
+
1,
|
| 1363 |
+
2,
|
| 1364 |
+
2,
|
| 1365 |
+
3,
|
| 1366 |
+
2,
|
| 1367 |
+
1,
|
| 1368 |
+
2,
|
| 1369 |
+
3,
|
| 1370 |
+
3,
|
| 1371 |
+
2,
|
| 1372 |
+
3,
|
| 1373 |
+
2,
|
| 1374 |
+
2,
|
| 1375 |
+
2,
|
| 1376 |
+
5,
|
| 1377 |
+
1,
|
| 1378 |
+
3,
|
| 1379 |
+
3,
|
| 1380 |
+
2,
|
| 1381 |
+
2,
|
| 1382 |
+
2,
|
| 1383 |
+
2,
|
| 1384 |
+
2,
|
| 1385 |
+
2,
|
| 1386 |
+
4,
|
| 1387 |
+
2,
|
| 1388 |
+
2,
|
| 1389 |
+
2,
|
| 1390 |
+
2,
|
| 1391 |
+
2,
|
| 1392 |
+
2,
|
| 1393 |
+
1,
|
| 1394 |
+
2,
|
| 1395 |
+
3,
|
| 1396 |
+
2,
|
| 1397 |
+
2,
|
| 1398 |
+
2,
|
| 1399 |
+
2,
|
| 1400 |
+
5,
|
| 1401 |
+
2,
|
| 1402 |
+
2,
|
| 1403 |
+
2,
|
| 1404 |
+
3,
|
| 1405 |
+
2,
|
| 1406 |
+
2,
|
| 1407 |
+
2
|
| 1408 |
+
],
|
| 1409 |
+
"best_token_acc": [
|
| 1410 |
+
1.0,
|
| 1411 |
+
0.9990234375,
|
| 1412 |
+
1.0,
|
| 1413 |
+
0.9990234375,
|
| 1414 |
+
1.0,
|
| 1415 |
+
1.0,
|
| 1416 |
+
1.0,
|
| 1417 |
+
1.0,
|
| 1418 |
+
1.0,
|
| 1419 |
+
1.0,
|
| 1420 |
+
1.0,
|
| 1421 |
+
1.0,
|
| 1422 |
+
1.0,
|
| 1423 |
+
1.0,
|
| 1424 |
+
1.0,
|
| 1425 |
+
1.0,
|
| 1426 |
+
1.0,
|
| 1427 |
+
1.0,
|
| 1428 |
+
0.9990234375,
|
| 1429 |
+
1.0,
|
| 1430 |
+
1.0,
|
| 1431 |
+
1.0,
|
| 1432 |
+
1.0,
|
| 1433 |
+
1.0,
|
| 1434 |
+
1.0,
|
| 1435 |
+
1.0,
|
| 1436 |
+
1.0,
|
| 1437 |
+
1.0,
|
| 1438 |
+
1.0,
|
| 1439 |
+
1.0,
|
| 1440 |
+
1.0,
|
| 1441 |
+
1.0,
|
| 1442 |
+
0.9990234375,
|
| 1443 |
+
1.0,
|
| 1444 |
+
1.0,
|
| 1445 |
+
1.0,
|
| 1446 |
+
1.0,
|
| 1447 |
+
1.0,
|
| 1448 |
+
1.0,
|
| 1449 |
+
1.0,
|
| 1450 |
+
1.0,
|
| 1451 |
+
1.0,
|
| 1452 |
+
1.0,
|
| 1453 |
+
1.0,
|
| 1454 |
+
1.0,
|
| 1455 |
+
1.0,
|
| 1456 |
+
1.0,
|
| 1457 |
+
1.0,
|
| 1458 |
+
1.0,
|
| 1459 |
+
1.0,
|
| 1460 |
+
0.9990234375,
|
| 1461 |
+
1.0,
|
| 1462 |
+
1.0,
|
| 1463 |
+
1.0,
|
| 1464 |
+
1.0,
|
| 1465 |
+
1.0,
|
| 1466 |
+
1.0,
|
| 1467 |
+
1.0,
|
| 1468 |
+
1.0,
|
| 1469 |
+
1.0,
|
| 1470 |
+
1.0,
|
| 1471 |
+
1.0,
|
| 1472 |
+
1.0,
|
| 1473 |
+
1.0
|
| 1474 |
+
]
|
| 1475 |
+
}
|
| 1476 |
+
}
|
| 1477 |
+
}
|
| 1478 |
+
RESULT config=p50_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p50_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=5000 views=2560000 token_acc=0.9999 exact=59/64 exact_refs=6 hits=[1, 2, 3, 4, 5, 7]
|
| 1479 |
+
[ctx1024-sampleds] capped config=p50_rand0_4_unif0_0p25_outwdm1 step=5000
|
| 1480 |
+
[ctx1024-sampleds] config=p35_rand0_4_unif0_0p25_outwdm1 run=train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 p=0.35 mode=sampled_path steps=4 steps_min=0 s_dist=uniform s_frac=0.0->0.25 beta=2.0,6.0 outwd=-1 sync_t=1
|
| 1481 |
+
[ctx1024-sampleds] train config=p35_rand0_4_unif0_0p25_outwdm1 from=0 to=1000
|
| 1482 |
+
[ctx1024-sampleds] eval config=p35_rand0_4_unif0_0p25_outwdm1 step=1000
|
| 1483 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=1000 soft=none
|
| 1484 |
+
[decode] max_len=1024 generated=64/64
|
| 1485 |
+
{
|
| 1486 |
+
"num_rows": 1,
|
| 1487 |
+
"best_by_run": {
|
| 1488 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1489 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1490 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0001000.pt",
|
| 1491 |
+
"ckpt_step": 1000,
|
| 1492 |
+
"endpoint_softening": "none",
|
| 1493 |
+
"decode_rule": "dirichlet_resample",
|
| 1494 |
+
"steps": 128,
|
| 1495 |
+
"time_schedule": "logit_normal",
|
| 1496 |
+
"model_t_mode": "post",
|
| 1497 |
+
"final_from": "state",
|
| 1498 |
+
"n_gen": 64,
|
| 1499 |
+
"n_refs": 8,
|
| 1500 |
+
"token_acc_mean": 0.1269989013671875,
|
| 1501 |
+
"token_acc_min": 0.013671875,
|
| 1502 |
+
"token_acc_max": 0.7060546875,
|
| 1503 |
+
"exact_acc": 0.0,
|
| 1504 |
+
"exact_count": 0,
|
| 1505 |
+
"exact_ref_coverage": 0.0,
|
| 1506 |
+
"exact_ref_count": 0,
|
| 1507 |
+
"exact_ref_hits": [],
|
| 1508 |
+
"best_ref_idx": [
|
| 1509 |
+
1,
|
| 1510 |
+
5,
|
| 1511 |
+
0,
|
| 1512 |
+
5,
|
| 1513 |
+
5,
|
| 1514 |
+
5,
|
| 1515 |
+
5,
|
| 1516 |
+
5,
|
| 1517 |
+
5,
|
| 1518 |
+
5,
|
| 1519 |
+
5,
|
| 1520 |
+
5,
|
| 1521 |
+
5,
|
| 1522 |
+
5,
|
| 1523 |
+
5,
|
| 1524 |
+
5,
|
| 1525 |
+
5,
|
| 1526 |
+
5,
|
| 1527 |
+
5,
|
| 1528 |
+
5,
|
| 1529 |
+
5,
|
| 1530 |
+
5,
|
| 1531 |
+
5,
|
| 1532 |
+
5,
|
| 1533 |
+
5,
|
| 1534 |
+
5,
|
| 1535 |
+
5,
|
| 1536 |
+
5,
|
| 1537 |
+
4,
|
| 1538 |
+
5,
|
| 1539 |
+
5,
|
| 1540 |
+
1,
|
| 1541 |
+
5,
|
| 1542 |
+
5,
|
| 1543 |
+
7,
|
| 1544 |
+
5,
|
| 1545 |
+
5,
|
| 1546 |
+
5,
|
| 1547 |
+
5,
|
| 1548 |
+
5,
|
| 1549 |
+
3,
|
| 1550 |
+
5,
|
| 1551 |
+
5,
|
| 1552 |
+
5,
|
| 1553 |
+
5,
|
| 1554 |
+
5,
|
| 1555 |
+
5,
|
| 1556 |
+
5,
|
| 1557 |
+
5,
|
| 1558 |
+
5,
|
| 1559 |
+
5,
|
| 1560 |
+
5,
|
| 1561 |
+
3,
|
| 1562 |
+
5,
|
| 1563 |
+
3,
|
| 1564 |
+
5,
|
| 1565 |
+
5,
|
| 1566 |
+
5,
|
| 1567 |
+
5,
|
| 1568 |
+
5,
|
| 1569 |
+
5,
|
| 1570 |
+
5,
|
| 1571 |
+
5,
|
| 1572 |
+
5
|
| 1573 |
+
],
|
| 1574 |
+
"best_token_acc": [
|
| 1575 |
+
0.017578125,
|
| 1576 |
+
0.0302734375,
|
| 1577 |
+
0.0166015625,
|
| 1578 |
+
0.0234375,
|
| 1579 |
+
0.0283203125,
|
| 1580 |
+
0.0234375,
|
| 1581 |
+
0.6455078125,
|
| 1582 |
+
0.0263671875,
|
| 1583 |
+
0.0224609375,
|
| 1584 |
+
0.03515625,
|
| 1585 |
+
0.037109375,
|
| 1586 |
+
0.03125,
|
| 1587 |
+
0.51953125,
|
| 1588 |
+
0.0361328125,
|
| 1589 |
+
0.04296875,
|
| 1590 |
+
0.0283203125,
|
| 1591 |
+
0.0458984375,
|
| 1592 |
+
0.1630859375,
|
| 1593 |
+
0.099609375,
|
| 1594 |
+
0.0224609375,
|
| 1595 |
+
0.0419921875,
|
| 1596 |
+
0.03125,
|
| 1597 |
+
0.6328125,
|
| 1598 |
+
0.7060546875,
|
| 1599 |
+
0.0263671875,
|
| 1600 |
+
0.142578125,
|
| 1601 |
+
0.0361328125,
|
| 1602 |
+
0.041015625,
|
| 1603 |
+
0.013671875,
|
| 1604 |
+
0.1201171875,
|
| 1605 |
+
0.0302734375,
|
| 1606 |
+
0.021484375,
|
| 1607 |
+
0.142578125,
|
| 1608 |
+
0.0478515625,
|
| 1609 |
+
0.0166015625,
|
| 1610 |
+
0.041015625,
|
| 1611 |
+
0.041015625,
|
| 1612 |
+
0.0361328125,
|
| 1613 |
+
0.21484375,
|
| 1614 |
+
0.03125,
|
| 1615 |
+
0.013671875,
|
| 1616 |
+
0.158203125,
|
| 1617 |
+
0.6884765625,
|
| 1618 |
+
0.03515625,
|
| 1619 |
+
0.0322265625,
|
| 1620 |
+
0.0322265625,
|
| 1621 |
+
0.04296875,
|
| 1622 |
+
0.0234375,
|
| 1623 |
+
0.6162109375,
|
| 1624 |
+
0.5224609375,
|
| 1625 |
+
0.0166015625,
|
| 1626 |
+
0.0419921875,
|
| 1627 |
+
0.0146484375,
|
| 1628 |
+
0.0361328125,
|
| 1629 |
+
0.0185546875,
|
| 1630 |
+
0.04296875,
|
| 1631 |
+
0.0283203125,
|
| 1632 |
+
0.0537109375,
|
| 1633 |
+
0.51953125,
|
| 1634 |
+
0.0703125,
|
| 1635 |
+
0.2080078125,
|
| 1636 |
+
0.53515625,
|
| 1637 |
+
0.048828125,
|
| 1638 |
+
0.017578125
|
| 1639 |
+
]
|
| 1640 |
+
}
|
| 1641 |
+
},
|
| 1642 |
+
"first_exact_by_run": {}
|
| 1643 |
+
}
|
| 1644 |
+
RESULT config=p35_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=1000 views=512000 token_acc=0.1270 exact=0/64 exact_refs=0 hits=[]
|
| 1645 |
+
[ctx1024-sampleds] train config=p35_rand0_4_unif0_0p25_outwdm1 from=1000 to=2000
|
| 1646 |
+
[ctx1024-sampleds] eval config=p35_rand0_4_unif0_0p25_outwdm1 step=2000
|
| 1647 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=2000 soft=none
|
| 1648 |
+
[decode] max_len=1024 generated=64/64
|
| 1649 |
+
{
|
| 1650 |
+
"num_rows": 1,
|
| 1651 |
+
"best_by_run": {
|
| 1652 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1653 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1654 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0002000.pt",
|
| 1655 |
+
"ckpt_step": 2000,
|
| 1656 |
+
"endpoint_softening": "none",
|
| 1657 |
+
"decode_rule": "dirichlet_resample",
|
| 1658 |
+
"steps": 128,
|
| 1659 |
+
"time_schedule": "logit_normal",
|
| 1660 |
+
"model_t_mode": "post",
|
| 1661 |
+
"final_from": "state",
|
| 1662 |
+
"n_gen": 64,
|
| 1663 |
+
"n_refs": 8,
|
| 1664 |
+
"token_acc_mean": 0.650299072265625,
|
| 1665 |
+
"token_acc_min": 0.0126953125,
|
| 1666 |
+
"token_acc_max": 1.0,
|
| 1667 |
+
"exact_acc": 0.453125,
|
| 1668 |
+
"exact_count": 29,
|
| 1669 |
+
"exact_ref_coverage": 0.125,
|
| 1670 |
+
"exact_ref_count": 1,
|
| 1671 |
+
"exact_ref_hits": [
|
| 1672 |
+
5
|
| 1673 |
+
],
|
| 1674 |
+
"best_ref_idx": [
|
| 1675 |
+
5,
|
| 1676 |
+
5,
|
| 1677 |
+
5,
|
| 1678 |
+
5,
|
| 1679 |
+
5,
|
| 1680 |
+
5,
|
| 1681 |
+
5,
|
| 1682 |
+
2,
|
| 1683 |
+
5,
|
| 1684 |
+
5,
|
| 1685 |
+
5,
|
| 1686 |
+
7,
|
| 1687 |
+
5,
|
| 1688 |
+
5,
|
| 1689 |
+
5,
|
| 1690 |
+
5,
|
| 1691 |
+
7,
|
| 1692 |
+
5,
|
| 1693 |
+
5,
|
| 1694 |
+
5,
|
| 1695 |
+
5,
|
| 1696 |
+
5,
|
| 1697 |
+
2,
|
| 1698 |
+
5,
|
| 1699 |
+
5,
|
| 1700 |
+
5,
|
| 1701 |
+
5,
|
| 1702 |
+
5,
|
| 1703 |
+
5,
|
| 1704 |
+
5,
|
| 1705 |
+
2,
|
| 1706 |
+
5,
|
| 1707 |
+
5,
|
| 1708 |
+
5,
|
| 1709 |
+
5,
|
| 1710 |
+
5,
|
| 1711 |
+
3,
|
| 1712 |
+
2,
|
| 1713 |
+
5,
|
| 1714 |
+
5,
|
| 1715 |
+
5,
|
| 1716 |
+
5,
|
| 1717 |
+
5,
|
| 1718 |
+
5,
|
| 1719 |
+
5,
|
| 1720 |
+
3,
|
| 1721 |
+
5,
|
| 1722 |
+
7,
|
| 1723 |
+
5,
|
| 1724 |
+
5,
|
| 1725 |
+
5,
|
| 1726 |
+
5,
|
| 1727 |
+
5,
|
| 1728 |
+
5,
|
| 1729 |
+
5,
|
| 1730 |
+
5,
|
| 1731 |
+
5,
|
| 1732 |
+
5,
|
| 1733 |
+
5,
|
| 1734 |
+
7,
|
| 1735 |
+
5,
|
| 1736 |
+
5,
|
| 1737 |
+
5,
|
| 1738 |
+
2
|
| 1739 |
+
],
|
| 1740 |
+
"best_token_acc": [
|
| 1741 |
+
0.029296875,
|
| 1742 |
+
1.0,
|
| 1743 |
+
1.0,
|
| 1744 |
+
1.0,
|
| 1745 |
+
1.0,
|
| 1746 |
+
1.0,
|
| 1747 |
+
1.0,
|
| 1748 |
+
0.9990234375,
|
| 1749 |
+
0.029296875,
|
| 1750 |
+
1.0,
|
| 1751 |
+
1.0,
|
| 1752 |
+
0.998046875,
|
| 1753 |
+
0.029296875,
|
| 1754 |
+
1.0,
|
| 1755 |
+
1.0,
|
| 1756 |
+
0.029296875,
|
| 1757 |
+
0.998046875,
|
| 1758 |
+
0.0302734375,
|
| 1759 |
+
0.029296875,
|
| 1760 |
+
0.029296875,
|
| 1761 |
+
0.9990234375,
|
| 1762 |
+
0.029296875,
|
| 1763 |
+
0.9990234375,
|
| 1764 |
+
1.0,
|
| 1765 |
+
0.029296875,
|
| 1766 |
+
0.0302734375,
|
| 1767 |
+
0.029296875,
|
| 1768 |
+
1.0,
|
| 1769 |
+
0.029296875,
|
| 1770 |
+
0.029296875,
|
| 1771 |
+
0.9990234375,
|
| 1772 |
+
0.9990234375,
|
| 1773 |
+
1.0,
|
| 1774 |
+
1.0,
|
| 1775 |
+
0.029296875,
|
| 1776 |
+
1.0,
|
| 1777 |
+
0.0166015625,
|
| 1778 |
+
0.9990234375,
|
| 1779 |
+
1.0,
|
| 1780 |
+
0.9990234375,
|
| 1781 |
+
0.029296875,
|
| 1782 |
+
1.0,
|
| 1783 |
+
1.0,
|
| 1784 |
+
1.0,
|
| 1785 |
+
1.0,
|
| 1786 |
+
0.0166015625,
|
| 1787 |
+
1.0,
|
| 1788 |
+
0.9990234375,
|
| 1789 |
+
1.0,
|
| 1790 |
+
1.0,
|
| 1791 |
+
0.029296875,
|
| 1792 |
+
1.0,
|
| 1793 |
+
0.029296875,
|
| 1794 |
+
1.0,
|
| 1795 |
+
1.0,
|
| 1796 |
+
0.0126953125,
|
| 1797 |
+
1.0,
|
| 1798 |
+
0.029296875,
|
| 1799 |
+
0.029296875,
|
| 1800 |
+
0.9990234375,
|
| 1801 |
+
1.0,
|
| 1802 |
+
0.029296875,
|
| 1803 |
+
1.0,
|
| 1804 |
+
0.998046875
|
| 1805 |
+
]
|
| 1806 |
+
}
|
| 1807 |
+
},
|
| 1808 |
+
"first_exact_by_run": {
|
| 1809 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1810 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1811 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0002000.pt",
|
| 1812 |
+
"ckpt_step": 2000,
|
| 1813 |
+
"endpoint_softening": "none",
|
| 1814 |
+
"decode_rule": "dirichlet_resample",
|
| 1815 |
+
"steps": 128,
|
| 1816 |
+
"time_schedule": "logit_normal",
|
| 1817 |
+
"model_t_mode": "post",
|
| 1818 |
+
"final_from": "state",
|
| 1819 |
+
"n_gen": 64,
|
| 1820 |
+
"n_refs": 8,
|
| 1821 |
+
"token_acc_mean": 0.650299072265625,
|
| 1822 |
+
"token_acc_min": 0.0126953125,
|
| 1823 |
+
"token_acc_max": 1.0,
|
| 1824 |
+
"exact_acc": 0.453125,
|
| 1825 |
+
"exact_count": 29,
|
| 1826 |
+
"exact_ref_coverage": 0.125,
|
| 1827 |
+
"exact_ref_count": 1,
|
| 1828 |
+
"exact_ref_hits": [
|
| 1829 |
+
5
|
| 1830 |
+
],
|
| 1831 |
+
"best_ref_idx": [
|
| 1832 |
+
5,
|
| 1833 |
+
5,
|
| 1834 |
+
5,
|
| 1835 |
+
5,
|
| 1836 |
+
5,
|
| 1837 |
+
5,
|
| 1838 |
+
5,
|
| 1839 |
+
2,
|
| 1840 |
+
5,
|
| 1841 |
+
5,
|
| 1842 |
+
5,
|
| 1843 |
+
7,
|
| 1844 |
+
5,
|
| 1845 |
+
5,
|
| 1846 |
+
5,
|
| 1847 |
+
5,
|
| 1848 |
+
7,
|
| 1849 |
+
5,
|
| 1850 |
+
5,
|
| 1851 |
+
5,
|
| 1852 |
+
5,
|
| 1853 |
+
5,
|
| 1854 |
+
2,
|
| 1855 |
+
5,
|
| 1856 |
+
5,
|
| 1857 |
+
5,
|
| 1858 |
+
5,
|
| 1859 |
+
5,
|
| 1860 |
+
5,
|
| 1861 |
+
5,
|
| 1862 |
+
2,
|
| 1863 |
+
5,
|
| 1864 |
+
5,
|
| 1865 |
+
5,
|
| 1866 |
+
5,
|
| 1867 |
+
5,
|
| 1868 |
+
3,
|
| 1869 |
+
2,
|
| 1870 |
+
5,
|
| 1871 |
+
5,
|
| 1872 |
+
5,
|
| 1873 |
+
5,
|
| 1874 |
+
5,
|
| 1875 |
+
5,
|
| 1876 |
+
5,
|
| 1877 |
+
3,
|
| 1878 |
+
5,
|
| 1879 |
+
7,
|
| 1880 |
+
5,
|
| 1881 |
+
5,
|
| 1882 |
+
5,
|
| 1883 |
+
5,
|
| 1884 |
+
5,
|
| 1885 |
+
5,
|
| 1886 |
+
5,
|
| 1887 |
+
5,
|
| 1888 |
+
5,
|
| 1889 |
+
5,
|
| 1890 |
+
5,
|
| 1891 |
+
7,
|
| 1892 |
+
5,
|
| 1893 |
+
5,
|
| 1894 |
+
5,
|
| 1895 |
+
2
|
| 1896 |
+
],
|
| 1897 |
+
"best_token_acc": [
|
| 1898 |
+
0.029296875,
|
| 1899 |
+
1.0,
|
| 1900 |
+
1.0,
|
| 1901 |
+
1.0,
|
| 1902 |
+
1.0,
|
| 1903 |
+
1.0,
|
| 1904 |
+
1.0,
|
| 1905 |
+
0.9990234375,
|
| 1906 |
+
0.029296875,
|
| 1907 |
+
1.0,
|
| 1908 |
+
1.0,
|
| 1909 |
+
0.998046875,
|
| 1910 |
+
0.029296875,
|
| 1911 |
+
1.0,
|
| 1912 |
+
1.0,
|
| 1913 |
+
0.029296875,
|
| 1914 |
+
0.998046875,
|
| 1915 |
+
0.0302734375,
|
| 1916 |
+
0.029296875,
|
| 1917 |
+
0.029296875,
|
| 1918 |
+
0.9990234375,
|
| 1919 |
+
0.029296875,
|
| 1920 |
+
0.9990234375,
|
| 1921 |
+
1.0,
|
| 1922 |
+
0.029296875,
|
| 1923 |
+
0.0302734375,
|
| 1924 |
+
0.029296875,
|
| 1925 |
+
1.0,
|
| 1926 |
+
0.029296875,
|
| 1927 |
+
0.029296875,
|
| 1928 |
+
0.9990234375,
|
| 1929 |
+
0.9990234375,
|
| 1930 |
+
1.0,
|
| 1931 |
+
1.0,
|
| 1932 |
+
0.029296875,
|
| 1933 |
+
1.0,
|
| 1934 |
+
0.0166015625,
|
| 1935 |
+
0.9990234375,
|
| 1936 |
+
1.0,
|
| 1937 |
+
0.9990234375,
|
| 1938 |
+
0.029296875,
|
| 1939 |
+
1.0,
|
| 1940 |
+
1.0,
|
| 1941 |
+
1.0,
|
| 1942 |
+
1.0,
|
| 1943 |
+
0.0166015625,
|
| 1944 |
+
1.0,
|
| 1945 |
+
0.9990234375,
|
| 1946 |
+
1.0,
|
| 1947 |
+
1.0,
|
| 1948 |
+
0.029296875,
|
| 1949 |
+
1.0,
|
| 1950 |
+
0.029296875,
|
| 1951 |
+
1.0,
|
| 1952 |
+
1.0,
|
| 1953 |
+
0.0126953125,
|
| 1954 |
+
1.0,
|
| 1955 |
+
0.029296875,
|
| 1956 |
+
0.029296875,
|
| 1957 |
+
0.9990234375,
|
| 1958 |
+
1.0,
|
| 1959 |
+
0.029296875,
|
| 1960 |
+
1.0,
|
| 1961 |
+
0.998046875
|
| 1962 |
+
]
|
| 1963 |
+
}
|
| 1964 |
+
}
|
| 1965 |
+
}
|
| 1966 |
+
RESULT config=p35_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=2000 views=1024000 token_acc=0.6503 exact=29/64 exact_refs=1 hits=[5]
|
| 1967 |
+
[ctx1024-sampleds] train config=p35_rand0_4_unif0_0p25_outwdm1 from=2000 to=3000
|
| 1968 |
+
[ctx1024-sampleds] eval config=p35_rand0_4_unif0_0p25_outwdm1 step=3000
|
| 1969 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=3000 soft=none
|
| 1970 |
+
[decode] max_len=1024 generated=64/64
|
| 1971 |
+
{
|
| 1972 |
+
"num_rows": 1,
|
| 1973 |
+
"best_by_run": {
|
| 1974 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 1975 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 1976 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0003000.pt",
|
| 1977 |
+
"ckpt_step": 3000,
|
| 1978 |
+
"endpoint_softening": "none",
|
| 1979 |
+
"decode_rule": "dirichlet_resample",
|
| 1980 |
+
"steps": 128,
|
| 1981 |
+
"time_schedule": "logit_normal",
|
| 1982 |
+
"model_t_mode": "post",
|
| 1983 |
+
"final_from": "state",
|
| 1984 |
+
"n_gen": 64,
|
| 1985 |
+
"n_refs": 8,
|
| 1986 |
+
"token_acc_mean": 0.99871826171875,
|
| 1987 |
+
"token_acc_min": 0.9970703125,
|
| 1988 |
+
"token_acc_max": 1.0,
|
| 1989 |
+
"exact_acc": 0.265625,
|
| 1990 |
+
"exact_count": 17,
|
| 1991 |
+
"exact_ref_coverage": 0.5,
|
| 1992 |
+
"exact_ref_count": 4,
|
| 1993 |
+
"exact_ref_hits": [
|
| 1994 |
+
1,
|
| 1995 |
+
2,
|
| 1996 |
+
3,
|
| 1997 |
+
5
|
| 1998 |
+
],
|
| 1999 |
+
"best_ref_idx": [
|
| 2000 |
+
5,
|
| 2001 |
+
1,
|
| 2002 |
+
5,
|
| 2003 |
+
5,
|
| 2004 |
+
5,
|
| 2005 |
+
1,
|
| 2006 |
+
5,
|
| 2007 |
+
1,
|
| 2008 |
+
1,
|
| 2009 |
+
1,
|
| 2010 |
+
1,
|
| 2011 |
+
3,
|
| 2012 |
+
5,
|
| 2013 |
+
5,
|
| 2014 |
+
5,
|
| 2015 |
+
1,
|
| 2016 |
+
5,
|
| 2017 |
+
5,
|
| 2018 |
+
5,
|
| 2019 |
+
5,
|
| 2020 |
+
1,
|
| 2021 |
+
1,
|
| 2022 |
+
7,
|
| 2023 |
+
1,
|
| 2024 |
+
5,
|
| 2025 |
+
1,
|
| 2026 |
+
1,
|
| 2027 |
+
1,
|
| 2028 |
+
2,
|
| 2029 |
+
5,
|
| 2030 |
+
5,
|
| 2031 |
+
5,
|
| 2032 |
+
5,
|
| 2033 |
+
5,
|
| 2034 |
+
1,
|
| 2035 |
+
5,
|
| 2036 |
+
5,
|
| 2037 |
+
1,
|
| 2038 |
+
5,
|
| 2039 |
+
1,
|
| 2040 |
+
5,
|
| 2041 |
+
1,
|
| 2042 |
+
1,
|
| 2043 |
+
5,
|
| 2044 |
+
5,
|
| 2045 |
+
1,
|
| 2046 |
+
5,
|
| 2047 |
+
3,
|
| 2048 |
+
5,
|
| 2049 |
+
5,
|
| 2050 |
+
5,
|
| 2051 |
+
3,
|
| 2052 |
+
5,
|
| 2053 |
+
1,
|
| 2054 |
+
2,
|
| 2055 |
+
5,
|
| 2056 |
+
5,
|
| 2057 |
+
1,
|
| 2058 |
+
1,
|
| 2059 |
+
3,
|
| 2060 |
+
5,
|
| 2061 |
+
1,
|
| 2062 |
+
1,
|
| 2063 |
+
5
|
| 2064 |
+
],
|
| 2065 |
+
"best_token_acc": [
|
| 2066 |
+
0.9990234375,
|
| 2067 |
+
0.998046875,
|
| 2068 |
+
0.9990234375,
|
| 2069 |
+
0.9990234375,
|
| 2070 |
+
0.9990234375,
|
| 2071 |
+
0.998046875,
|
| 2072 |
+
0.998046875,
|
| 2073 |
+
0.998046875,
|
| 2074 |
+
1.0,
|
| 2075 |
+
0.9970703125,
|
| 2076 |
+
0.998046875,
|
| 2077 |
+
0.9990234375,
|
| 2078 |
+
0.998046875,
|
| 2079 |
+
0.9990234375,
|
| 2080 |
+
0.9990234375,
|
| 2081 |
+
0.9990234375,
|
| 2082 |
+
0.998046875,
|
| 2083 |
+
1.0,
|
| 2084 |
+
1.0,
|
| 2085 |
+
1.0,
|
| 2086 |
+
0.998046875,
|
| 2087 |
+
0.998046875,
|
| 2088 |
+
0.9970703125,
|
| 2089 |
+
0.998046875,
|
| 2090 |
+
0.998046875,
|
| 2091 |
+
0.9970703125,
|
| 2092 |
+
0.998046875,
|
| 2093 |
+
0.998046875,
|
| 2094 |
+
1.0,
|
| 2095 |
+
0.9970703125,
|
| 2096 |
+
1.0,
|
| 2097 |
+
1.0,
|
| 2098 |
+
0.9990234375,
|
| 2099 |
+
1.0,
|
| 2100 |
+
0.998046875,
|
| 2101 |
+
0.9990234375,
|
| 2102 |
+
1.0,
|
| 2103 |
+
0.9970703125,
|
| 2104 |
+
0.9990234375,
|
| 2105 |
+
0.998046875,
|
| 2106 |
+
0.9990234375,
|
| 2107 |
+
0.998046875,
|
| 2108 |
+
0.998046875,
|
| 2109 |
+
0.9990234375,
|
| 2110 |
+
1.0,
|
| 2111 |
+
0.9970703125,
|
| 2112 |
+
0.9990234375,
|
| 2113 |
+
1.0,
|
| 2114 |
+
1.0,
|
| 2115 |
+
1.0,
|
| 2116 |
+
0.9990234375,
|
| 2117 |
+
1.0,
|
| 2118 |
+
1.0,
|
| 2119 |
+
0.998046875,
|
| 2120 |
+
0.9970703125,
|
| 2121 |
+
1.0,
|
| 2122 |
+
0.998046875,
|
| 2123 |
+
0.998046875,
|
| 2124 |
+
0.9990234375,
|
| 2125 |
+
0.998046875,
|
| 2126 |
+
0.9990234375,
|
| 2127 |
+
0.998046875,
|
| 2128 |
+
0.998046875,
|
| 2129 |
+
1.0
|
| 2130 |
+
]
|
| 2131 |
+
}
|
| 2132 |
+
},
|
| 2133 |
+
"first_exact_by_run": {
|
| 2134 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 2135 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 2136 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0003000.pt",
|
| 2137 |
+
"ckpt_step": 3000,
|
| 2138 |
+
"endpoint_softening": "none",
|
| 2139 |
+
"decode_rule": "dirichlet_resample",
|
| 2140 |
+
"steps": 128,
|
| 2141 |
+
"time_schedule": "logit_normal",
|
| 2142 |
+
"model_t_mode": "post",
|
| 2143 |
+
"final_from": "state",
|
| 2144 |
+
"n_gen": 64,
|
| 2145 |
+
"n_refs": 8,
|
| 2146 |
+
"token_acc_mean": 0.99871826171875,
|
| 2147 |
+
"token_acc_min": 0.9970703125,
|
| 2148 |
+
"token_acc_max": 1.0,
|
| 2149 |
+
"exact_acc": 0.265625,
|
| 2150 |
+
"exact_count": 17,
|
| 2151 |
+
"exact_ref_coverage": 0.5,
|
| 2152 |
+
"exact_ref_count": 4,
|
| 2153 |
+
"exact_ref_hits": [
|
| 2154 |
+
1,
|
| 2155 |
+
2,
|
| 2156 |
+
3,
|
| 2157 |
+
5
|
| 2158 |
+
],
|
| 2159 |
+
"best_ref_idx": [
|
| 2160 |
+
5,
|
| 2161 |
+
1,
|
| 2162 |
+
5,
|
| 2163 |
+
5,
|
| 2164 |
+
5,
|
| 2165 |
+
1,
|
| 2166 |
+
5,
|
| 2167 |
+
1,
|
| 2168 |
+
1,
|
| 2169 |
+
1,
|
| 2170 |
+
1,
|
| 2171 |
+
3,
|
| 2172 |
+
5,
|
| 2173 |
+
5,
|
| 2174 |
+
5,
|
| 2175 |
+
1,
|
| 2176 |
+
5,
|
| 2177 |
+
5,
|
| 2178 |
+
5,
|
| 2179 |
+
5,
|
| 2180 |
+
1,
|
| 2181 |
+
1,
|
| 2182 |
+
7,
|
| 2183 |
+
1,
|
| 2184 |
+
5,
|
| 2185 |
+
1,
|
| 2186 |
+
1,
|
| 2187 |
+
1,
|
| 2188 |
+
2,
|
| 2189 |
+
5,
|
| 2190 |
+
5,
|
| 2191 |
+
5,
|
| 2192 |
+
5,
|
| 2193 |
+
5,
|
| 2194 |
+
1,
|
| 2195 |
+
5,
|
| 2196 |
+
5,
|
| 2197 |
+
1,
|
| 2198 |
+
5,
|
| 2199 |
+
1,
|
| 2200 |
+
5,
|
| 2201 |
+
1,
|
| 2202 |
+
1,
|
| 2203 |
+
5,
|
| 2204 |
+
5,
|
| 2205 |
+
1,
|
| 2206 |
+
5,
|
| 2207 |
+
3,
|
| 2208 |
+
5,
|
| 2209 |
+
5,
|
| 2210 |
+
5,
|
| 2211 |
+
3,
|
| 2212 |
+
5,
|
| 2213 |
+
1,
|
| 2214 |
+
2,
|
| 2215 |
+
5,
|
| 2216 |
+
5,
|
| 2217 |
+
1,
|
| 2218 |
+
1,
|
| 2219 |
+
3,
|
| 2220 |
+
5,
|
| 2221 |
+
1,
|
| 2222 |
+
1,
|
| 2223 |
+
5
|
| 2224 |
+
],
|
| 2225 |
+
"best_token_acc": [
|
| 2226 |
+
0.9990234375,
|
| 2227 |
+
0.998046875,
|
| 2228 |
+
0.9990234375,
|
| 2229 |
+
0.9990234375,
|
| 2230 |
+
0.9990234375,
|
| 2231 |
+
0.998046875,
|
| 2232 |
+
0.998046875,
|
| 2233 |
+
0.998046875,
|
| 2234 |
+
1.0,
|
| 2235 |
+
0.9970703125,
|
| 2236 |
+
0.998046875,
|
| 2237 |
+
0.9990234375,
|
| 2238 |
+
0.998046875,
|
| 2239 |
+
0.9990234375,
|
| 2240 |
+
0.9990234375,
|
| 2241 |
+
0.9990234375,
|
| 2242 |
+
0.998046875,
|
| 2243 |
+
1.0,
|
| 2244 |
+
1.0,
|
| 2245 |
+
1.0,
|
| 2246 |
+
0.998046875,
|
| 2247 |
+
0.998046875,
|
| 2248 |
+
0.9970703125,
|
| 2249 |
+
0.998046875,
|
| 2250 |
+
0.998046875,
|
| 2251 |
+
0.9970703125,
|
| 2252 |
+
0.998046875,
|
| 2253 |
+
0.998046875,
|
| 2254 |
+
1.0,
|
| 2255 |
+
0.9970703125,
|
| 2256 |
+
1.0,
|
| 2257 |
+
1.0,
|
| 2258 |
+
0.9990234375,
|
| 2259 |
+
1.0,
|
| 2260 |
+
0.998046875,
|
| 2261 |
+
0.9990234375,
|
| 2262 |
+
1.0,
|
| 2263 |
+
0.9970703125,
|
| 2264 |
+
0.9990234375,
|
| 2265 |
+
0.998046875,
|
| 2266 |
+
0.9990234375,
|
| 2267 |
+
0.998046875,
|
| 2268 |
+
0.998046875,
|
| 2269 |
+
0.9990234375,
|
| 2270 |
+
1.0,
|
| 2271 |
+
0.9970703125,
|
| 2272 |
+
0.9990234375,
|
| 2273 |
+
1.0,
|
| 2274 |
+
1.0,
|
| 2275 |
+
1.0,
|
| 2276 |
+
0.9990234375,
|
| 2277 |
+
1.0,
|
| 2278 |
+
1.0,
|
| 2279 |
+
0.998046875,
|
| 2280 |
+
0.9970703125,
|
| 2281 |
+
1.0,
|
| 2282 |
+
0.998046875,
|
| 2283 |
+
0.998046875,
|
| 2284 |
+
0.9990234375,
|
| 2285 |
+
0.998046875,
|
| 2286 |
+
0.9990234375,
|
| 2287 |
+
0.998046875,
|
| 2288 |
+
0.998046875,
|
| 2289 |
+
1.0
|
| 2290 |
+
]
|
| 2291 |
+
}
|
| 2292 |
+
}
|
| 2293 |
+
}
|
| 2294 |
+
RESULT config=p35_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=3000 views=1536000 token_acc=0.9987 exact=17/64 exact_refs=4 hits=[1, 2, 3, 5]
|
| 2295 |
+
[ctx1024-sampleds] train config=p35_rand0_4_unif0_0p25_outwdm1 from=3000 to=4000
|
| 2296 |
+
[ctx1024-sampleds] eval config=p35_rand0_4_unif0_0p25_outwdm1 step=4000
|
| 2297 |
+
[eval-decode-acc] train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 step=4000 soft=none
|
| 2298 |
+
[decode] max_len=1024 generated=64/64
|
| 2299 |
+
{
|
| 2300 |
+
"num_rows": 1,
|
| 2301 |
+
"best_by_run": {
|
| 2302 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 2303 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 2304 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0004000.pt",
|
| 2305 |
+
"ckpt_step": 4000,
|
| 2306 |
+
"endpoint_softening": "none",
|
| 2307 |
+
"decode_rule": "dirichlet_resample",
|
| 2308 |
+
"steps": 128,
|
| 2309 |
+
"time_schedule": "logit_normal",
|
| 2310 |
+
"model_t_mode": "post",
|
| 2311 |
+
"final_from": "state",
|
| 2312 |
+
"n_gen": 64,
|
| 2313 |
+
"n_refs": 8,
|
| 2314 |
+
"token_acc_mean": 0.9990234375,
|
| 2315 |
+
"token_acc_min": 0.9970703125,
|
| 2316 |
+
"token_acc_max": 1.0,
|
| 2317 |
+
"exact_acc": 0.109375,
|
| 2318 |
+
"exact_count": 7,
|
| 2319 |
+
"exact_ref_coverage": 0.375,
|
| 2320 |
+
"exact_ref_count": 3,
|
| 2321 |
+
"exact_ref_hits": [
|
| 2322 |
+
3,
|
| 2323 |
+
4,
|
| 2324 |
+
7
|
| 2325 |
+
],
|
| 2326 |
+
"best_ref_idx": [
|
| 2327 |
+
5,
|
| 2328 |
+
5,
|
| 2329 |
+
5,
|
| 2330 |
+
5,
|
| 2331 |
+
5,
|
| 2332 |
+
5,
|
| 2333 |
+
5,
|
| 2334 |
+
4,
|
| 2335 |
+
5,
|
| 2336 |
+
5,
|
| 2337 |
+
5,
|
| 2338 |
+
5,
|
| 2339 |
+
5,
|
| 2340 |
+
1,
|
| 2341 |
+
5,
|
| 2342 |
+
5,
|
| 2343 |
+
5,
|
| 2344 |
+
5,
|
| 2345 |
+
5,
|
| 2346 |
+
5,
|
| 2347 |
+
5,
|
| 2348 |
+
5,
|
| 2349 |
+
1,
|
| 2350 |
+
3,
|
| 2351 |
+
1,
|
| 2352 |
+
5,
|
| 2353 |
+
5,
|
| 2354 |
+
7,
|
| 2355 |
+
5,
|
| 2356 |
+
5,
|
| 2357 |
+
5,
|
| 2358 |
+
1,
|
| 2359 |
+
5,
|
| 2360 |
+
5,
|
| 2361 |
+
5,
|
| 2362 |
+
5,
|
| 2363 |
+
5,
|
| 2364 |
+
7,
|
| 2365 |
+
5,
|
| 2366 |
+
5,
|
| 2367 |
+
5,
|
| 2368 |
+
5,
|
| 2369 |
+
5,
|
| 2370 |
+
5,
|
| 2371 |
+
5,
|
| 2372 |
+
1,
|
| 2373 |
+
4,
|
| 2374 |
+
5,
|
| 2375 |
+
5,
|
| 2376 |
+
5,
|
| 2377 |
+
2,
|
| 2378 |
+
5,
|
| 2379 |
+
5,
|
| 2380 |
+
7,
|
| 2381 |
+
5,
|
| 2382 |
+
5,
|
| 2383 |
+
7,
|
| 2384 |
+
5,
|
| 2385 |
+
5,
|
| 2386 |
+
1,
|
| 2387 |
+
5,
|
| 2388 |
+
5,
|
| 2389 |
+
5,
|
| 2390 |
+
5
|
| 2391 |
+
],
|
| 2392 |
+
"best_token_acc": [
|
| 2393 |
+
0.9990234375,
|
| 2394 |
+
0.9990234375,
|
| 2395 |
+
0.9990234375,
|
| 2396 |
+
0.9990234375,
|
| 2397 |
+
0.9990234375,
|
| 2398 |
+
0.9990234375,
|
| 2399 |
+
0.9990234375,
|
| 2400 |
+
1.0,
|
| 2401 |
+
0.9990234375,
|
| 2402 |
+
0.9990234375,
|
| 2403 |
+
0.9990234375,
|
| 2404 |
+
0.9990234375,
|
| 2405 |
+
0.9990234375,
|
| 2406 |
+
0.9990234375,
|
| 2407 |
+
0.9990234375,
|
| 2408 |
+
0.9990234375,
|
| 2409 |
+
0.9990234375,
|
| 2410 |
+
0.9990234375,
|
| 2411 |
+
0.9990234375,
|
| 2412 |
+
0.9990234375,
|
| 2413 |
+
0.9990234375,
|
| 2414 |
+
0.9990234375,
|
| 2415 |
+
0.998046875,
|
| 2416 |
+
1.0,
|
| 2417 |
+
0.998046875,
|
| 2418 |
+
0.9990234375,
|
| 2419 |
+
0.9990234375,
|
| 2420 |
+
1.0,
|
| 2421 |
+
0.9990234375,
|
| 2422 |
+
0.9990234375,
|
| 2423 |
+
0.9990234375,
|
| 2424 |
+
0.9970703125,
|
| 2425 |
+
0.9990234375,
|
| 2426 |
+
0.9990234375,
|
| 2427 |
+
0.9990234375,
|
| 2428 |
+
0.9990234375,
|
| 2429 |
+
0.9990234375,
|
| 2430 |
+
1.0,
|
| 2431 |
+
0.9990234375,
|
| 2432 |
+
0.9990234375,
|
| 2433 |
+
0.9990234375,
|
| 2434 |
+
0.9990234375,
|
| 2435 |
+
0.9990234375,
|
| 2436 |
+
0.9990234375,
|
| 2437 |
+
0.9990234375,
|
| 2438 |
+
0.9970703125,
|
| 2439 |
+
1.0,
|
| 2440 |
+
0.9990234375,
|
| 2441 |
+
0.9990234375,
|
| 2442 |
+
0.9990234375,
|
| 2443 |
+
0.9990234375,
|
| 2444 |
+
0.9990234375,
|
| 2445 |
+
0.9990234375,
|
| 2446 |
+
1.0,
|
| 2447 |
+
0.9990234375,
|
| 2448 |
+
0.9990234375,
|
| 2449 |
+
1.0,
|
| 2450 |
+
0.9990234375,
|
| 2451 |
+
0.9990234375,
|
| 2452 |
+
0.998046875,
|
| 2453 |
+
0.9990234375,
|
| 2454 |
+
0.9990234375,
|
| 2455 |
+
0.9990234375,
|
| 2456 |
+
0.9990234375
|
| 2457 |
+
]
|
| 2458 |
+
}
|
| 2459 |
+
},
|
| 2460 |
+
"first_exact_by_run": {
|
| 2461 |
+
"train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800::none": {
|
| 2462 |
+
"run": "train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800",
|
| 2463 |
+
"checkpoint": "runs/train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800/step_0004000.pt",
|
| 2464 |
+
"ckpt_step": 4000,
|
| 2465 |
+
"endpoint_softening": "none",
|
| 2466 |
+
"decode_rule": "dirichlet_resample",
|
| 2467 |
+
"steps": 128,
|
| 2468 |
+
"time_schedule": "logit_normal",
|
| 2469 |
+
"model_t_mode": "post",
|
| 2470 |
+
"final_from": "state",
|
| 2471 |
+
"n_gen": 64,
|
| 2472 |
+
"n_refs": 8,
|
| 2473 |
+
"token_acc_mean": 0.9990234375,
|
| 2474 |
+
"token_acc_min": 0.9970703125,
|
| 2475 |
+
"token_acc_max": 1.0,
|
| 2476 |
+
"exact_acc": 0.109375,
|
| 2477 |
+
"exact_count": 7,
|
| 2478 |
+
"exact_ref_coverage": 0.375,
|
| 2479 |
+
"exact_ref_count": 3,
|
| 2480 |
+
"exact_ref_hits": [
|
| 2481 |
+
3,
|
| 2482 |
+
4,
|
| 2483 |
+
7
|
| 2484 |
+
],
|
| 2485 |
+
"best_ref_idx": [
|
| 2486 |
+
5,
|
| 2487 |
+
5,
|
| 2488 |
+
5,
|
| 2489 |
+
5,
|
| 2490 |
+
5,
|
| 2491 |
+
5,
|
| 2492 |
+
5,
|
| 2493 |
+
4,
|
| 2494 |
+
5,
|
| 2495 |
+
5,
|
| 2496 |
+
5,
|
| 2497 |
+
5,
|
| 2498 |
+
5,
|
| 2499 |
+
1,
|
| 2500 |
+
5,
|
| 2501 |
+
5,
|
| 2502 |
+
5,
|
| 2503 |
+
5,
|
| 2504 |
+
5,
|
| 2505 |
+
5,
|
| 2506 |
+
5,
|
| 2507 |
+
5,
|
| 2508 |
+
1,
|
| 2509 |
+
3,
|
| 2510 |
+
1,
|
| 2511 |
+
5,
|
| 2512 |
+
5,
|
| 2513 |
+
7,
|
| 2514 |
+
5,
|
| 2515 |
+
5,
|
| 2516 |
+
5,
|
| 2517 |
+
1,
|
| 2518 |
+
5,
|
| 2519 |
+
5,
|
| 2520 |
+
5,
|
| 2521 |
+
5,
|
| 2522 |
+
5,
|
| 2523 |
+
7,
|
| 2524 |
+
5,
|
| 2525 |
+
5,
|
| 2526 |
+
5,
|
| 2527 |
+
5,
|
| 2528 |
+
5,
|
| 2529 |
+
5,
|
| 2530 |
+
5,
|
| 2531 |
+
1,
|
| 2532 |
+
4,
|
| 2533 |
+
5,
|
| 2534 |
+
5,
|
| 2535 |
+
5,
|
| 2536 |
+
2,
|
| 2537 |
+
5,
|
| 2538 |
+
5,
|
| 2539 |
+
7,
|
| 2540 |
+
5,
|
| 2541 |
+
5,
|
| 2542 |
+
7,
|
| 2543 |
+
5,
|
| 2544 |
+
5,
|
| 2545 |
+
1,
|
| 2546 |
+
5,
|
| 2547 |
+
5,
|
| 2548 |
+
5,
|
| 2549 |
+
5
|
| 2550 |
+
],
|
| 2551 |
+
"best_token_acc": [
|
| 2552 |
+
0.9990234375,
|
| 2553 |
+
0.9990234375,
|
| 2554 |
+
0.9990234375,
|
| 2555 |
+
0.9990234375,
|
| 2556 |
+
0.9990234375,
|
| 2557 |
+
0.9990234375,
|
| 2558 |
+
0.9990234375,
|
| 2559 |
+
1.0,
|
| 2560 |
+
0.9990234375,
|
| 2561 |
+
0.9990234375,
|
| 2562 |
+
0.9990234375,
|
| 2563 |
+
0.9990234375,
|
| 2564 |
+
0.9990234375,
|
| 2565 |
+
0.9990234375,
|
| 2566 |
+
0.9990234375,
|
| 2567 |
+
0.9990234375,
|
| 2568 |
+
0.9990234375,
|
| 2569 |
+
0.9990234375,
|
| 2570 |
+
0.9990234375,
|
| 2571 |
+
0.9990234375,
|
| 2572 |
+
0.9990234375,
|
| 2573 |
+
0.9990234375,
|
| 2574 |
+
0.998046875,
|
| 2575 |
+
1.0,
|
| 2576 |
+
0.998046875,
|
| 2577 |
+
0.9990234375,
|
| 2578 |
+
0.9990234375,
|
| 2579 |
+
1.0,
|
| 2580 |
+
0.9990234375,
|
| 2581 |
+
0.9990234375,
|
| 2582 |
+
0.9990234375,
|
| 2583 |
+
0.9970703125,
|
| 2584 |
+
0.9990234375,
|
| 2585 |
+
0.9990234375,
|
| 2586 |
+
0.9990234375,
|
| 2587 |
+
0.9990234375,
|
| 2588 |
+
0.9990234375,
|
| 2589 |
+
1.0,
|
| 2590 |
+
0.9990234375,
|
| 2591 |
+
0.9990234375,
|
| 2592 |
+
0.9990234375,
|
| 2593 |
+
0.9990234375,
|
| 2594 |
+
0.9990234375,
|
| 2595 |
+
0.9990234375,
|
| 2596 |
+
0.9990234375,
|
| 2597 |
+
0.9970703125,
|
| 2598 |
+
1.0,
|
| 2599 |
+
0.9990234375,
|
| 2600 |
+
0.9990234375,
|
| 2601 |
+
0.9990234375,
|
| 2602 |
+
0.9990234375,
|
| 2603 |
+
0.9990234375,
|
| 2604 |
+
0.9990234375,
|
| 2605 |
+
1.0,
|
| 2606 |
+
0.9990234375,
|
| 2607 |
+
0.9990234375,
|
| 2608 |
+
1.0,
|
| 2609 |
+
0.9990234375,
|
| 2610 |
+
0.9990234375,
|
| 2611 |
+
0.998046875,
|
| 2612 |
+
0.9990234375,
|
| 2613 |
+
0.9990234375,
|
| 2614 |
+
0.9990234375,
|
| 2615 |
+
0.9990234375
|
| 2616 |
+
]
|
| 2617 |
+
}
|
| 2618 |
+
}
|
| 2619 |
+
}
|
| 2620 |
+
RESULT config=p35_rand0_4_unif0_0p25_outwdm1 decode=dirichlet_resample run=train8_ctx1024_t5tok_p35_rand0_4_unif0_0p25_outwdm1_t5tok_ctx1024_randk_20260518_014800 ckpt_step=4000 views=2048000 token_acc=0.9990 exact=7/64 exact_refs=3 hits=[3, 4, 7]
|
| 2621 |
+
[ctx1024-sampleds] train config=p35_rand0_4_unif0_0p25_outwdm1 from=4000 to=5000
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/__init__.py
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
__all__ = (
|
| 2 |
+
"StateInline",
|
| 3 |
+
"autolink",
|
| 4 |
+
"backtick",
|
| 5 |
+
"emphasis",
|
| 6 |
+
"entity",
|
| 7 |
+
"escape",
|
| 8 |
+
"fragments_join",
|
| 9 |
+
"html_inline",
|
| 10 |
+
"image",
|
| 11 |
+
"link",
|
| 12 |
+
"link_pairs",
|
| 13 |
+
"linkify",
|
| 14 |
+
"newline",
|
| 15 |
+
"strikethrough",
|
| 16 |
+
"text",
|
| 17 |
+
)
|
| 18 |
+
from . import emphasis, strikethrough
|
| 19 |
+
from .autolink import autolink
|
| 20 |
+
from .backticks import backtick
|
| 21 |
+
from .balance_pairs import link_pairs
|
| 22 |
+
from .entity import entity
|
| 23 |
+
from .escape import escape
|
| 24 |
+
from .fragments_join import fragments_join
|
| 25 |
+
from .html_inline import html_inline
|
| 26 |
+
from .image import image
|
| 27 |
+
from .link import link
|
| 28 |
+
from .linkify import linkify
|
| 29 |
+
from .newline import newline
|
| 30 |
+
from .state_inline import StateInline
|
| 31 |
+
from .text import text
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/emphasis.py
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Process *this* and _that_
|
| 2 |
+
#
|
| 3 |
+
from __future__ import annotations
|
| 4 |
+
|
| 5 |
+
from .state_inline import Delimiter, StateInline
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def tokenize(state: StateInline, silent: bool) -> bool:
|
| 9 |
+
"""Insert each marker as a separate text token, and add it to delimiter list"""
|
| 10 |
+
start = state.pos
|
| 11 |
+
marker = state.src[start]
|
| 12 |
+
|
| 13 |
+
if silent:
|
| 14 |
+
return False
|
| 15 |
+
|
| 16 |
+
if marker not in ("_", "*"):
|
| 17 |
+
return False
|
| 18 |
+
|
| 19 |
+
scanned = state.scanDelims(state.pos, marker == "*")
|
| 20 |
+
|
| 21 |
+
for _ in range(scanned.length):
|
| 22 |
+
token = state.push("text", "", 0)
|
| 23 |
+
token.content = marker
|
| 24 |
+
state.delimiters.append(
|
| 25 |
+
Delimiter(
|
| 26 |
+
marker=ord(marker),
|
| 27 |
+
length=scanned.length,
|
| 28 |
+
token=len(state.tokens) - 1,
|
| 29 |
+
end=-1,
|
| 30 |
+
open=scanned.can_open,
|
| 31 |
+
close=scanned.can_close,
|
| 32 |
+
)
|
| 33 |
+
)
|
| 34 |
+
|
| 35 |
+
state.pos += scanned.length
|
| 36 |
+
|
| 37 |
+
return True
|
| 38 |
+
|
| 39 |
+
|
| 40 |
+
def _postProcess(state: StateInline, delimiters: list[Delimiter]) -> None:
|
| 41 |
+
i = len(delimiters) - 1
|
| 42 |
+
while i >= 0:
|
| 43 |
+
startDelim = delimiters[i]
|
| 44 |
+
|
| 45 |
+
# /* _ */ /* * */
|
| 46 |
+
if startDelim.marker != 0x5F and startDelim.marker != 0x2A:
|
| 47 |
+
i -= 1
|
| 48 |
+
continue
|
| 49 |
+
|
| 50 |
+
# Process only opening markers
|
| 51 |
+
if startDelim.end == -1:
|
| 52 |
+
i -= 1
|
| 53 |
+
continue
|
| 54 |
+
|
| 55 |
+
endDelim = delimiters[startDelim.end]
|
| 56 |
+
|
| 57 |
+
# If the previous delimiter has the same marker and is adjacent to this one,
|
| 58 |
+
# merge those into one strong delimiter.
|
| 59 |
+
#
|
| 60 |
+
# `<em><em>whatever</em></em>` -> `<strong>whatever</strong>`
|
| 61 |
+
#
|
| 62 |
+
isStrong = (
|
| 63 |
+
i > 0
|
| 64 |
+
and delimiters[i - 1].end == startDelim.end + 1
|
| 65 |
+
# check that first two markers match and adjacent
|
| 66 |
+
and delimiters[i - 1].marker == startDelim.marker
|
| 67 |
+
and delimiters[i - 1].token == startDelim.token - 1
|
| 68 |
+
# check that last two markers are adjacent (we can safely assume they match)
|
| 69 |
+
and delimiters[startDelim.end + 1].token == endDelim.token + 1
|
| 70 |
+
)
|
| 71 |
+
|
| 72 |
+
ch = chr(startDelim.marker)
|
| 73 |
+
|
| 74 |
+
token = state.tokens[startDelim.token]
|
| 75 |
+
token.type = "strong_open" if isStrong else "em_open"
|
| 76 |
+
token.tag = "strong" if isStrong else "em"
|
| 77 |
+
token.nesting = 1
|
| 78 |
+
token.markup = ch + ch if isStrong else ch
|
| 79 |
+
token.content = ""
|
| 80 |
+
|
| 81 |
+
token = state.tokens[endDelim.token]
|
| 82 |
+
token.type = "strong_close" if isStrong else "em_close"
|
| 83 |
+
token.tag = "strong" if isStrong else "em"
|
| 84 |
+
token.nesting = -1
|
| 85 |
+
token.markup = ch + ch if isStrong else ch
|
| 86 |
+
token.content = ""
|
| 87 |
+
|
| 88 |
+
if isStrong:
|
| 89 |
+
state.tokens[delimiters[i - 1].token].content = ""
|
| 90 |
+
state.tokens[delimiters[startDelim.end + 1].token].content = ""
|
| 91 |
+
i -= 1
|
| 92 |
+
|
| 93 |
+
i -= 1
|
| 94 |
+
|
| 95 |
+
|
| 96 |
+
def postProcess(state: StateInline) -> None:
|
| 97 |
+
"""Walk through delimiter list and replace text tokens with tags."""
|
| 98 |
+
_postProcess(state, state.delimiters)
|
| 99 |
+
|
| 100 |
+
for token in state.tokens_meta:
|
| 101 |
+
if token and "delimiters" in token:
|
| 102 |
+
_postProcess(state, token["delimiters"])
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/escape.py
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""
|
| 2 |
+
Process escaped chars and hardbreaks
|
| 3 |
+
"""
|
| 4 |
+
|
| 5 |
+
from ..common.utils import isStrSpace
|
| 6 |
+
from .state_inline import StateInline
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
def escape(state: StateInline, silent: bool) -> bool:
|
| 10 |
+
"""Process escaped chars and hardbreaks."""
|
| 11 |
+
pos = state.pos
|
| 12 |
+
maximum = state.posMax
|
| 13 |
+
|
| 14 |
+
if state.src[pos] != "\\":
|
| 15 |
+
return False
|
| 16 |
+
|
| 17 |
+
pos += 1
|
| 18 |
+
|
| 19 |
+
# '\' at the end of the inline block
|
| 20 |
+
if pos >= maximum:
|
| 21 |
+
return False
|
| 22 |
+
|
| 23 |
+
ch1 = state.src[pos]
|
| 24 |
+
ch1_ord = ord(ch1)
|
| 25 |
+
if ch1 == "\n":
|
| 26 |
+
if not silent:
|
| 27 |
+
state.push("hardbreak", "br", 0)
|
| 28 |
+
pos += 1
|
| 29 |
+
# skip leading whitespaces from next line
|
| 30 |
+
while pos < maximum:
|
| 31 |
+
ch = state.src[pos]
|
| 32 |
+
if not isStrSpace(ch):
|
| 33 |
+
break
|
| 34 |
+
pos += 1
|
| 35 |
+
|
| 36 |
+
state.pos = pos
|
| 37 |
+
return True
|
| 38 |
+
|
| 39 |
+
escapedStr = state.src[pos]
|
| 40 |
+
|
| 41 |
+
if ch1_ord >= 0xD800 and ch1_ord <= 0xDBFF and pos + 1 < maximum:
|
| 42 |
+
ch2 = state.src[pos + 1]
|
| 43 |
+
ch2_ord = ord(ch2)
|
| 44 |
+
if ch2_ord >= 0xDC00 and ch2_ord <= 0xDFFF:
|
| 45 |
+
escapedStr += ch2
|
| 46 |
+
pos += 1
|
| 47 |
+
|
| 48 |
+
origStr = "\\" + escapedStr
|
| 49 |
+
|
| 50 |
+
if not silent:
|
| 51 |
+
token = state.push("text_special", "", 0)
|
| 52 |
+
token.content = escapedStr if ch1 in _ESCAPED else origStr
|
| 53 |
+
token.markup = origStr
|
| 54 |
+
token.info = "escape"
|
| 55 |
+
|
| 56 |
+
state.pos = pos + 1
|
| 57 |
+
return True
|
| 58 |
+
|
| 59 |
+
|
| 60 |
+
_ESCAPED = {
|
| 61 |
+
"!",
|
| 62 |
+
'"',
|
| 63 |
+
"#",
|
| 64 |
+
"$",
|
| 65 |
+
"%",
|
| 66 |
+
"&",
|
| 67 |
+
"'",
|
| 68 |
+
"(",
|
| 69 |
+
")",
|
| 70 |
+
"*",
|
| 71 |
+
"+",
|
| 72 |
+
",",
|
| 73 |
+
"-",
|
| 74 |
+
".",
|
| 75 |
+
"/",
|
| 76 |
+
":",
|
| 77 |
+
";",
|
| 78 |
+
"<",
|
| 79 |
+
"=",
|
| 80 |
+
">",
|
| 81 |
+
"?",
|
| 82 |
+
"@",
|
| 83 |
+
"[",
|
| 84 |
+
"\\",
|
| 85 |
+
"]",
|
| 86 |
+
"^",
|
| 87 |
+
"_",
|
| 88 |
+
"`",
|
| 89 |
+
"{",
|
| 90 |
+
"|",
|
| 91 |
+
"}",
|
| 92 |
+
"~",
|
| 93 |
+
}
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/state_inline.py
ADDED
|
@@ -0,0 +1,167 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from __future__ import annotations
|
| 2 |
+
|
| 3 |
+
from dataclasses import dataclass
|
| 4 |
+
from typing import TYPE_CHECKING, Any, Literal, NamedTuple
|
| 5 |
+
|
| 6 |
+
from ..common.utils import isMdAsciiPunct, isPunctChar, isWhiteSpace
|
| 7 |
+
from ..ruler import StateBase
|
| 8 |
+
from ..token import Token
|
| 9 |
+
from ..utils import EnvType
|
| 10 |
+
|
| 11 |
+
if TYPE_CHECKING:
|
| 12 |
+
from markdown_it import MarkdownIt
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
@dataclass(slots=True)
|
| 16 |
+
class Delimiter:
|
| 17 |
+
# Char code of the starting marker (number).
|
| 18 |
+
marker: int
|
| 19 |
+
|
| 20 |
+
# Total length of these series of delimiters.
|
| 21 |
+
length: int
|
| 22 |
+
|
| 23 |
+
# A position of the token this delimiter corresponds to.
|
| 24 |
+
token: int
|
| 25 |
+
|
| 26 |
+
# If this delimiter is matched as a valid opener, `end` will be
|
| 27 |
+
# equal to its position, otherwise it's `-1`.
|
| 28 |
+
end: int
|
| 29 |
+
|
| 30 |
+
# Boolean flags that determine if this delimiter could open or close
|
| 31 |
+
# an emphasis.
|
| 32 |
+
open: bool
|
| 33 |
+
close: bool
|
| 34 |
+
|
| 35 |
+
level: bool | None = None
|
| 36 |
+
|
| 37 |
+
|
| 38 |
+
class Scanned(NamedTuple):
|
| 39 |
+
can_open: bool
|
| 40 |
+
can_close: bool
|
| 41 |
+
length: int
|
| 42 |
+
|
| 43 |
+
|
| 44 |
+
class StateInline(StateBase):
|
| 45 |
+
def __init__(
|
| 46 |
+
self, src: str, md: MarkdownIt, env: EnvType, outTokens: list[Token]
|
| 47 |
+
) -> None:
|
| 48 |
+
self.src = src
|
| 49 |
+
self.env = env
|
| 50 |
+
self.md = md
|
| 51 |
+
self.tokens = outTokens
|
| 52 |
+
self.tokens_meta: list[dict[str, Any] | None] = [None] * len(outTokens)
|
| 53 |
+
|
| 54 |
+
self.pos = 0
|
| 55 |
+
self.posMax = len(self.src)
|
| 56 |
+
self.level = 0
|
| 57 |
+
self.pending = ""
|
| 58 |
+
self.pendingLevel = 0
|
| 59 |
+
|
| 60 |
+
# Stores { start: end } pairs. Useful for backtrack
|
| 61 |
+
# optimization of pairs parse (emphasis, strikes).
|
| 62 |
+
self.cache: dict[int, int] = {}
|
| 63 |
+
|
| 64 |
+
# List of emphasis-like delimiters for current tag
|
| 65 |
+
self.delimiters: list[Delimiter] = []
|
| 66 |
+
|
| 67 |
+
# Stack of delimiter lists for upper level tags
|
| 68 |
+
self._prev_delimiters: list[list[Delimiter]] = []
|
| 69 |
+
|
| 70 |
+
# backticklength => last seen position
|
| 71 |
+
self.backticks: dict[int, int] = {}
|
| 72 |
+
self.backticksScanned = False
|
| 73 |
+
|
| 74 |
+
# Counter used to disable inline linkify-it execution
|
| 75 |
+
# inside <a> and markdown links
|
| 76 |
+
self.linkLevel = 0
|
| 77 |
+
|
| 78 |
+
def __repr__(self) -> str:
|
| 79 |
+
return (
|
| 80 |
+
f"{self.__class__.__name__}"
|
| 81 |
+
f"(pos=[{self.pos} of {self.posMax}], token={len(self.tokens)})"
|
| 82 |
+
)
|
| 83 |
+
|
| 84 |
+
def pushPending(self) -> Token:
|
| 85 |
+
token = Token("text", "", 0)
|
| 86 |
+
token.content = self.pending
|
| 87 |
+
token.level = self.pendingLevel
|
| 88 |
+
self.tokens.append(token)
|
| 89 |
+
self.pending = ""
|
| 90 |
+
return token
|
| 91 |
+
|
| 92 |
+
def push(self, ttype: str, tag: str, nesting: Literal[-1, 0, 1]) -> Token:
|
| 93 |
+
"""Push new token to "stream".
|
| 94 |
+
If pending text exists - flush it as text token
|
| 95 |
+
"""
|
| 96 |
+
if self.pending:
|
| 97 |
+
self.pushPending()
|
| 98 |
+
|
| 99 |
+
token = Token(ttype, tag, nesting)
|
| 100 |
+
token_meta = None
|
| 101 |
+
|
| 102 |
+
if nesting < 0:
|
| 103 |
+
# closing tag
|
| 104 |
+
self.level -= 1
|
| 105 |
+
self.delimiters = self._prev_delimiters.pop()
|
| 106 |
+
|
| 107 |
+
token.level = self.level
|
| 108 |
+
|
| 109 |
+
if nesting > 0:
|
| 110 |
+
# opening tag
|
| 111 |
+
self.level += 1
|
| 112 |
+
self._prev_delimiters.append(self.delimiters)
|
| 113 |
+
self.delimiters = []
|
| 114 |
+
token_meta = {"delimiters": self.delimiters}
|
| 115 |
+
|
| 116 |
+
self.pendingLevel = self.level
|
| 117 |
+
self.tokens.append(token)
|
| 118 |
+
self.tokens_meta.append(token_meta)
|
| 119 |
+
return token
|
| 120 |
+
|
| 121 |
+
def scanDelims(self, start: int, canSplitWord: bool) -> Scanned:
|
| 122 |
+
"""
|
| 123 |
+
Scan a sequence of emphasis-like markers, and determine whether
|
| 124 |
+
it can start an emphasis sequence or end an emphasis sequence.
|
| 125 |
+
|
| 126 |
+
- start - position to scan from (it should point at a valid marker);
|
| 127 |
+
- canSplitWord - determine if these markers can be found inside a word
|
| 128 |
+
|
| 129 |
+
"""
|
| 130 |
+
pos = start
|
| 131 |
+
maximum = self.posMax
|
| 132 |
+
marker = self.src[start]
|
| 133 |
+
|
| 134 |
+
# treat beginning of the line as a whitespace
|
| 135 |
+
lastChar = self.src[start - 1] if start > 0 else " "
|
| 136 |
+
|
| 137 |
+
while pos < maximum and self.src[pos] == marker:
|
| 138 |
+
pos += 1
|
| 139 |
+
|
| 140 |
+
count = pos - start
|
| 141 |
+
|
| 142 |
+
# treat end of the line as a whitespace
|
| 143 |
+
nextChar = self.src[pos] if pos < maximum else " "
|
| 144 |
+
|
| 145 |
+
isLastPunctChar = isMdAsciiPunct(ord(lastChar)) or isPunctChar(lastChar)
|
| 146 |
+
isNextPunctChar = isMdAsciiPunct(ord(nextChar)) or isPunctChar(nextChar)
|
| 147 |
+
|
| 148 |
+
isLastWhiteSpace = isWhiteSpace(ord(lastChar))
|
| 149 |
+
isNextWhiteSpace = isWhiteSpace(ord(nextChar))
|
| 150 |
+
|
| 151 |
+
left_flanking = not (
|
| 152 |
+
isNextWhiteSpace
|
| 153 |
+
or (isNextPunctChar and not (isLastWhiteSpace or isLastPunctChar))
|
| 154 |
+
)
|
| 155 |
+
right_flanking = not (
|
| 156 |
+
isLastWhiteSpace
|
| 157 |
+
or (isLastPunctChar and not (isNextWhiteSpace or isNextPunctChar))
|
| 158 |
+
)
|
| 159 |
+
|
| 160 |
+
can_open = left_flanking and (
|
| 161 |
+
canSplitWord or (not right_flanking) or isLastPunctChar
|
| 162 |
+
)
|
| 163 |
+
can_close = right_flanking and (
|
| 164 |
+
canSplitWord or (not left_flanking) or isNextPunctChar
|
| 165 |
+
)
|
| 166 |
+
|
| 167 |
+
return Scanned(can_open, can_close, count)
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/strikethrough.py
ADDED
|
@@ -0,0 +1,173 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# ~~strike through~~ (and optionally ~single tilde~)
|
| 2 |
+
from __future__ import annotations
|
| 3 |
+
|
| 4 |
+
from .state_inline import Delimiter, StateInline
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def tokenize(state: StateInline, silent: bool) -> bool:
|
| 8 |
+
"""Insert each marker as a separate text token, and add it to delimiter list.
|
| 9 |
+
|
| 10 |
+
When the ``strikethrough_single_tilde`` option is enabled on the
|
| 11 |
+
``MarkdownIt`` instance, single ``~`` delimiters are also accepted and
|
| 12 |
+
runs of three or more tildes are rejected (matching GitHub's rendering behaviour).
|
| 13 |
+
"""
|
| 14 |
+
start = state.pos
|
| 15 |
+
ch = state.src[start]
|
| 16 |
+
|
| 17 |
+
if silent:
|
| 18 |
+
return False
|
| 19 |
+
|
| 20 |
+
if ch != "~":
|
| 21 |
+
return False
|
| 22 |
+
|
| 23 |
+
scanned = state.scanDelims(state.pos, True)
|
| 24 |
+
length = scanned.length
|
| 25 |
+
|
| 26 |
+
single_tilde = state.md.options.get("strikethrough_single_tilde", False)
|
| 27 |
+
|
| 28 |
+
if single_tilde:
|
| 29 |
+
# GitHub mode: only accept exactly 1 or 2 tildes.
|
| 30 |
+
if length < 1:
|
| 31 |
+
return False
|
| 32 |
+
if length > 2:
|
| 33 |
+
# Consume 3+ tildes as plain text so the parser doesn't
|
| 34 |
+
# re-enter and match a subset of them. This intentionally
|
| 35 |
+
# matches GitHub's rendering, where ≥3 tildes are literal text.
|
| 36 |
+
token = state.push("text", "", 0)
|
| 37 |
+
token.content = ch * length
|
| 38 |
+
state.pos += scanned.length
|
| 39 |
+
return True
|
| 40 |
+
|
| 41 |
+
token = state.push("text", "", 0)
|
| 42 |
+
token.content = ch * length
|
| 43 |
+
state.delimiters.append(
|
| 44 |
+
Delimiter(
|
| 45 |
+
marker=ord(ch),
|
| 46 |
+
length=0, # disable "rule of 3" length checks
|
| 47 |
+
token=len(state.tokens) - 1,
|
| 48 |
+
end=-1,
|
| 49 |
+
open=scanned.can_open,
|
| 50 |
+
close=scanned.can_close,
|
| 51 |
+
)
|
| 52 |
+
)
|
| 53 |
+
else:
|
| 54 |
+
# Original markdown-it behaviour: minimum 2, split odd runs.
|
| 55 |
+
if length < 2:
|
| 56 |
+
return False
|
| 57 |
+
|
| 58 |
+
if length % 2:
|
| 59 |
+
token = state.push("text", "", 0)
|
| 60 |
+
token.content = ch
|
| 61 |
+
length -= 1
|
| 62 |
+
|
| 63 |
+
i = 0
|
| 64 |
+
while i < length:
|
| 65 |
+
token = state.push("text", "", 0)
|
| 66 |
+
token.content = ch + ch
|
| 67 |
+
state.delimiters.append(
|
| 68 |
+
Delimiter(
|
| 69 |
+
marker=ord(ch),
|
| 70 |
+
length=0, # disable "rule of 3" length checks
|
| 71 |
+
token=len(state.tokens) - 1,
|
| 72 |
+
end=-1,
|
| 73 |
+
open=scanned.can_open,
|
| 74 |
+
close=scanned.can_close,
|
| 75 |
+
)
|
| 76 |
+
)
|
| 77 |
+
|
| 78 |
+
i += 2
|
| 79 |
+
|
| 80 |
+
state.pos += scanned.length
|
| 81 |
+
|
| 82 |
+
return True
|
| 83 |
+
|
| 84 |
+
|
| 85 |
+
def _postProcess(state: StateInline, delimiters: list[Delimiter]) -> None:
|
| 86 |
+
loneMarkers = []
|
| 87 |
+
maximum = len(delimiters)
|
| 88 |
+
single_tilde = state.md.options.get("strikethrough_single_tilde", False)
|
| 89 |
+
|
| 90 |
+
i = 0
|
| 91 |
+
while i < maximum:
|
| 92 |
+
startDelim = delimiters[i]
|
| 93 |
+
|
| 94 |
+
if startDelim.marker != 0x7E: # /* ~ */
|
| 95 |
+
i += 1
|
| 96 |
+
continue
|
| 97 |
+
|
| 98 |
+
if startDelim.end == -1:
|
| 99 |
+
i += 1
|
| 100 |
+
continue
|
| 101 |
+
|
| 102 |
+
endDelim = delimiters[startDelim.end]
|
| 103 |
+
|
| 104 |
+
# In single-tilde mode, opener and closer must have the same width
|
| 105 |
+
# (both `~` or both `~~`). The width is stored in the text token.
|
| 106 |
+
if single_tilde:
|
| 107 |
+
opener_content = state.tokens[startDelim.token].content
|
| 108 |
+
closer_content = state.tokens[endDelim.token].content
|
| 109 |
+
if opener_content != closer_content:
|
| 110 |
+
i += 1
|
| 111 |
+
continue
|
| 112 |
+
|
| 113 |
+
markup = state.tokens[startDelim.token].content
|
| 114 |
+
|
| 115 |
+
token = state.tokens[startDelim.token]
|
| 116 |
+
token.type = "s_open"
|
| 117 |
+
token.tag = "s"
|
| 118 |
+
token.nesting = 1
|
| 119 |
+
token.markup = markup
|
| 120 |
+
token.content = ""
|
| 121 |
+
|
| 122 |
+
token = state.tokens[endDelim.token]
|
| 123 |
+
token.type = "s_close"
|
| 124 |
+
token.tag = "s"
|
| 125 |
+
token.nesting = -1
|
| 126 |
+
token.markup = markup
|
| 127 |
+
token.content = ""
|
| 128 |
+
|
| 129 |
+
if (
|
| 130 |
+
state.tokens[endDelim.token - 1].type == "text"
|
| 131 |
+
and state.tokens[endDelim.token - 1].content == "~"
|
| 132 |
+
):
|
| 133 |
+
loneMarkers.append(endDelim.token - 1)
|
| 134 |
+
|
| 135 |
+
i += 1
|
| 136 |
+
|
| 137 |
+
# If a marker sequence has an odd number of characters, it's split
|
| 138 |
+
# like this: `~~~~~` -> `~` + `~~` + `~~`, leaving one marker at the
|
| 139 |
+
# start of the sequence.
|
| 140 |
+
#
|
| 141 |
+
# So, we have to move all those markers after subsequent s_close tags.
|
| 142 |
+
#
|
| 143 |
+
while loneMarkers:
|
| 144 |
+
i = loneMarkers.pop()
|
| 145 |
+
j = i + 1
|
| 146 |
+
|
| 147 |
+
while (j < len(state.tokens)) and (state.tokens[j].type == "s_close"):
|
| 148 |
+
j += 1
|
| 149 |
+
|
| 150 |
+
j -= 1
|
| 151 |
+
|
| 152 |
+
if i != j:
|
| 153 |
+
token = state.tokens[j]
|
| 154 |
+
state.tokens[j] = state.tokens[i]
|
| 155 |
+
state.tokens[i] = token
|
| 156 |
+
|
| 157 |
+
|
| 158 |
+
def postProcess(state: StateInline) -> None:
|
| 159 |
+
"""Walk through delimiter list and replace text tokens with tags."""
|
| 160 |
+
tokens_meta = state.tokens_meta
|
| 161 |
+
maximum = len(state.tokens_meta)
|
| 162 |
+
_postProcess(state, state.delimiters)
|
| 163 |
+
|
| 164 |
+
curr = 0
|
| 165 |
+
while curr < maximum:
|
| 166 |
+
try:
|
| 167 |
+
curr_meta = tokens_meta[curr]
|
| 168 |
+
except IndexError:
|
| 169 |
+
pass
|
| 170 |
+
else:
|
| 171 |
+
if curr_meta and "delimiters" in curr_meta:
|
| 172 |
+
_postProcess(state, curr_meta["delimiters"])
|
| 173 |
+
curr += 1
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/markdown_it/rules_inline/text.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Skip text characters for text token, place those to pending buffer
|
| 2 |
+
# and increment current pos
|
| 3 |
+
from .state_inline import StateInline
|
| 4 |
+
|
| 5 |
+
# Rule to skip pure text
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def text(state: StateInline, silent: bool) -> bool:
|
| 9 |
+
pos = state.pos
|
| 10 |
+
posMax = state.posMax
|
| 11 |
+
|
| 12 |
+
terminator_char = state.md.inline.terminator_re.search(state.src, pos)
|
| 13 |
+
pos = terminator_char.start() if terminator_char else posMax
|
| 14 |
+
|
| 15 |
+
if pos == state.pos:
|
| 16 |
+
return False
|
| 17 |
+
|
| 18 |
+
if not silent:
|
| 19 |
+
state.pending += state.src[state.pos : pos]
|
| 20 |
+
|
| 21 |
+
state.pos = pos
|
| 22 |
+
|
| 23 |
+
return True
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/pop2piano/__init__.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2024 The HuggingFace Team. All rights reserved.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
from typing import TYPE_CHECKING
|
| 15 |
+
|
| 16 |
+
from ...utils import _LazyModule
|
| 17 |
+
from ...utils.import_utils import define_import_structure
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
if TYPE_CHECKING:
|
| 21 |
+
from .configuration_pop2piano import *
|
| 22 |
+
from .modeling_pop2piano import *
|
| 23 |
+
else:
|
| 24 |
+
import sys
|
| 25 |
+
|
| 26 |
+
_file = globals()["__file__"]
|
| 27 |
+
sys.modules[__name__] = _LazyModule(__name__, _file, define_import_structure(_file), module_spec=__spec__)
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/pop2piano/feature_extraction_pop2piano.py
ADDED
|
@@ -0,0 +1,452 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2023 The HuggingFace Inc. team.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
"""Feature extractor class for Pop2Piano"""
|
| 15 |
+
|
| 16 |
+
import warnings
|
| 17 |
+
|
| 18 |
+
import numpy
|
| 19 |
+
import numpy as np
|
| 20 |
+
|
| 21 |
+
from ...audio_utils import mel_filter_bank, spectrogram
|
| 22 |
+
from ...feature_extraction_sequence_utils import SequenceFeatureExtractor
|
| 23 |
+
from ...feature_extraction_utils import BatchFeature
|
| 24 |
+
from ...utils import (
|
| 25 |
+
TensorType,
|
| 26 |
+
is_essentia_available,
|
| 27 |
+
is_librosa_available,
|
| 28 |
+
is_scipy_available,
|
| 29 |
+
logging,
|
| 30 |
+
requires_backends,
|
| 31 |
+
)
|
| 32 |
+
from ...utils.import_utils import requires
|
| 33 |
+
|
| 34 |
+
|
| 35 |
+
if is_essentia_available():
|
| 36 |
+
import essentia.standard
|
| 37 |
+
|
| 38 |
+
if is_librosa_available():
|
| 39 |
+
import librosa
|
| 40 |
+
|
| 41 |
+
if is_scipy_available():
|
| 42 |
+
import scipy
|
| 43 |
+
|
| 44 |
+
|
| 45 |
+
logger = logging.get_logger(__name__)
|
| 46 |
+
|
| 47 |
+
|
| 48 |
+
@requires(backends=("essentia", "librosa", "scipy", "torch"))
|
| 49 |
+
class Pop2PianoFeatureExtractor(SequenceFeatureExtractor):
|
| 50 |
+
r"""
|
| 51 |
+
Constructs a Pop2Piano feature extractor.
|
| 52 |
+
|
| 53 |
+
This feature extractor inherits from [`~feature_extraction_sequence_utils.SequenceFeatureExtractor`] which contains
|
| 54 |
+
most of the main methods. Users should refer to this superclass for more information regarding those methods.
|
| 55 |
+
|
| 56 |
+
This class extracts rhythm and preprocesses the audio before it is passed to the model. First the audio is passed
|
| 57 |
+
to `RhythmExtractor2013` algorithm which extracts the beat_times, beat positions and estimates their confidence as
|
| 58 |
+
well as tempo in bpm, then beat_times is interpolated and to get beatsteps. Later we calculate
|
| 59 |
+
extrapolated_beatsteps from it to be used in tokenizer. On the other hand audio is resampled to self.sampling_rate
|
| 60 |
+
and preprocessed and then log mel spectogram is computed from that to be used in our transformer model.
|
| 61 |
+
|
| 62 |
+
Args:
|
| 63 |
+
sampling_rate (`int`, *optional*, defaults to 22050):
|
| 64 |
+
Target Sampling rate of audio signal. It's the sampling rate that we forward to the model.
|
| 65 |
+
padding_value (`int`, *optional*, defaults to 0):
|
| 66 |
+
Padding value used to pad the audio. Should correspond to silences.
|
| 67 |
+
window_size (`int`, *optional*, defaults to 4096):
|
| 68 |
+
Length of the window in samples to which the Fourier transform is applied.
|
| 69 |
+
hop_length (`int`, *optional*, defaults to 1024):
|
| 70 |
+
Step size between each window of the waveform, in samples.
|
| 71 |
+
min_frequency (`float`, *optional*, defaults to 10.0):
|
| 72 |
+
Lowest frequency that will be used in the log-mel spectrogram.
|
| 73 |
+
feature_size (`int`, *optional*, defaults to 512):
|
| 74 |
+
The feature dimension of the extracted features.
|
| 75 |
+
num_bars (`int`, *optional*, defaults to 2):
|
| 76 |
+
Determines interval between each sequence.
|
| 77 |
+
"""
|
| 78 |
+
|
| 79 |
+
model_input_names = ["input_features", "beatsteps", "extrapolated_beatstep"]
|
| 80 |
+
|
| 81 |
+
def __init__(
|
| 82 |
+
self,
|
| 83 |
+
sampling_rate: int = 22050,
|
| 84 |
+
padding_value: int = 0,
|
| 85 |
+
window_size: int = 4096,
|
| 86 |
+
hop_length: int = 1024,
|
| 87 |
+
min_frequency: float = 10.0,
|
| 88 |
+
feature_size: int = 512,
|
| 89 |
+
num_bars: int = 2,
|
| 90 |
+
**kwargs,
|
| 91 |
+
):
|
| 92 |
+
super().__init__(
|
| 93 |
+
feature_size=feature_size,
|
| 94 |
+
sampling_rate=sampling_rate,
|
| 95 |
+
padding_value=padding_value,
|
| 96 |
+
**kwargs,
|
| 97 |
+
)
|
| 98 |
+
self.sampling_rate = sampling_rate
|
| 99 |
+
self.padding_value = padding_value
|
| 100 |
+
self.window_size = window_size
|
| 101 |
+
self.hop_length = hop_length
|
| 102 |
+
self.min_frequency = min_frequency
|
| 103 |
+
self.feature_size = feature_size
|
| 104 |
+
self.num_bars = num_bars
|
| 105 |
+
self.mel_filters = mel_filter_bank(
|
| 106 |
+
num_frequency_bins=(self.window_size // 2) + 1,
|
| 107 |
+
num_mel_filters=self.feature_size,
|
| 108 |
+
min_frequency=self.min_frequency,
|
| 109 |
+
max_frequency=float(self.sampling_rate // 2),
|
| 110 |
+
sampling_rate=self.sampling_rate,
|
| 111 |
+
norm=None,
|
| 112 |
+
mel_scale="htk",
|
| 113 |
+
)
|
| 114 |
+
|
| 115 |
+
def mel_spectrogram(self, sequence: np.ndarray):
|
| 116 |
+
"""
|
| 117 |
+
Generates MelSpectrogram.
|
| 118 |
+
|
| 119 |
+
Args:
|
| 120 |
+
sequence (`numpy.ndarray`):
|
| 121 |
+
The sequence of which the mel-spectrogram will be computed.
|
| 122 |
+
"""
|
| 123 |
+
mel_specs = []
|
| 124 |
+
for seq in sequence:
|
| 125 |
+
window = np.hanning(self.window_size + 1)[:-1]
|
| 126 |
+
mel_specs.append(
|
| 127 |
+
spectrogram(
|
| 128 |
+
waveform=seq,
|
| 129 |
+
window=window,
|
| 130 |
+
frame_length=self.window_size,
|
| 131 |
+
hop_length=self.hop_length,
|
| 132 |
+
power=2.0,
|
| 133 |
+
mel_filters=self.mel_filters,
|
| 134 |
+
)
|
| 135 |
+
)
|
| 136 |
+
mel_specs = np.array(mel_specs)
|
| 137 |
+
|
| 138 |
+
return mel_specs
|
| 139 |
+
|
| 140 |
+
def extract_rhythm(self, audio: np.ndarray):
|
| 141 |
+
"""
|
| 142 |
+
This algorithm(`RhythmExtractor2013`) extracts the beat positions and estimates their confidence as well as
|
| 143 |
+
tempo in bpm for an audio signal. For more information please visit
|
| 144 |
+
https://essentia.upf.edu/reference/std_RhythmExtractor2013.html .
|
| 145 |
+
|
| 146 |
+
Args:
|
| 147 |
+
audio(`numpy.ndarray`):
|
| 148 |
+
raw audio waveform which is passed to the Rhythm Extractor.
|
| 149 |
+
"""
|
| 150 |
+
requires_backends(self, ["essentia"])
|
| 151 |
+
essentia_tracker = essentia.standard.RhythmExtractor2013(method="multifeature")
|
| 152 |
+
bpm, beat_times, confidence, estimates, essentia_beat_intervals = essentia_tracker(audio)
|
| 153 |
+
|
| 154 |
+
return bpm, beat_times, confidence, estimates, essentia_beat_intervals
|
| 155 |
+
|
| 156 |
+
def interpolate_beat_times(
|
| 157 |
+
self, beat_times: numpy.ndarray, steps_per_beat: numpy.ndarray, n_extend: numpy.ndarray
|
| 158 |
+
):
|
| 159 |
+
"""
|
| 160 |
+
This method takes beat_times and then interpolates that using `scipy.interpolate.interp1d` and the output is
|
| 161 |
+
then used to convert raw audio to log-mel-spectrogram.
|
| 162 |
+
|
| 163 |
+
Args:
|
| 164 |
+
beat_times (`numpy.ndarray`):
|
| 165 |
+
beat_times is passed into `scipy.interpolate.interp1d` for processing.
|
| 166 |
+
steps_per_beat (`int`):
|
| 167 |
+
used as an parameter to control the interpolation.
|
| 168 |
+
n_extend (`int`):
|
| 169 |
+
used as an parameter to control the interpolation.
|
| 170 |
+
"""
|
| 171 |
+
|
| 172 |
+
requires_backends(self, ["scipy"])
|
| 173 |
+
beat_times_function = scipy.interpolate.interp1d(
|
| 174 |
+
np.arange(beat_times.size),
|
| 175 |
+
beat_times,
|
| 176 |
+
bounds_error=False,
|
| 177 |
+
fill_value="extrapolate",
|
| 178 |
+
)
|
| 179 |
+
|
| 180 |
+
ext_beats = beat_times_function(
|
| 181 |
+
np.linspace(0, beat_times.size + n_extend - 1, beat_times.size * steps_per_beat + n_extend)
|
| 182 |
+
)
|
| 183 |
+
|
| 184 |
+
return ext_beats
|
| 185 |
+
|
| 186 |
+
def preprocess_mel(self, audio: np.ndarray, beatstep: np.ndarray):
|
| 187 |
+
"""
|
| 188 |
+
Preprocessing for log-mel-spectrogram
|
| 189 |
+
|
| 190 |
+
Args:
|
| 191 |
+
audio (`numpy.ndarray` of shape `(audio_length, )` ):
|
| 192 |
+
Raw audio waveform to be processed.
|
| 193 |
+
beatstep (`numpy.ndarray`):
|
| 194 |
+
Interpolated values of the raw audio. If beatstep[0] is greater than 0.0, then it will be shifted by
|
| 195 |
+
the value at beatstep[0].
|
| 196 |
+
"""
|
| 197 |
+
|
| 198 |
+
if audio is not None and len(audio.shape) != 1:
|
| 199 |
+
raise ValueError(
|
| 200 |
+
f"Expected `audio` to be a single channel audio input of shape `(n, )` but found shape {audio.shape}."
|
| 201 |
+
)
|
| 202 |
+
if beatstep[0] > 0.0:
|
| 203 |
+
beatstep = beatstep - beatstep[0]
|
| 204 |
+
|
| 205 |
+
num_steps = self.num_bars * 4
|
| 206 |
+
num_target_steps = len(beatstep)
|
| 207 |
+
extrapolated_beatstep = self.interpolate_beat_times(
|
| 208 |
+
beat_times=beatstep, steps_per_beat=1, n_extend=(self.num_bars + 1) * 4 + 1
|
| 209 |
+
)
|
| 210 |
+
|
| 211 |
+
sample_indices = []
|
| 212 |
+
max_feature_length = 0
|
| 213 |
+
for i in range(0, num_target_steps, num_steps):
|
| 214 |
+
start_idx = i
|
| 215 |
+
end_idx = min(i + num_steps, num_target_steps)
|
| 216 |
+
start_sample = int(extrapolated_beatstep[start_idx] * self.sampling_rate)
|
| 217 |
+
end_sample = int(extrapolated_beatstep[end_idx] * self.sampling_rate)
|
| 218 |
+
sample_indices.append((start_sample, end_sample))
|
| 219 |
+
max_feature_length = max(max_feature_length, end_sample - start_sample)
|
| 220 |
+
padded_batch = []
|
| 221 |
+
for start_sample, end_sample in sample_indices:
|
| 222 |
+
feature = audio[start_sample:end_sample]
|
| 223 |
+
padded_feature = np.pad(
|
| 224 |
+
feature,
|
| 225 |
+
((0, max_feature_length - feature.shape[0]),),
|
| 226 |
+
"constant",
|
| 227 |
+
constant_values=0,
|
| 228 |
+
)
|
| 229 |
+
padded_batch.append(padded_feature)
|
| 230 |
+
|
| 231 |
+
padded_batch = np.asarray(padded_batch)
|
| 232 |
+
return padded_batch, extrapolated_beatstep
|
| 233 |
+
|
| 234 |
+
def _pad(self, features: np.ndarray, add_zero_line=True):
|
| 235 |
+
features_shapes = [each_feature.shape for each_feature in features]
|
| 236 |
+
attention_masks, padded_features = [], []
|
| 237 |
+
for i, each_feature in enumerate(features):
|
| 238 |
+
# To pad "input_features".
|
| 239 |
+
if len(each_feature.shape) == 3:
|
| 240 |
+
features_pad_value = max([*zip(*features_shapes)][1]) - features_shapes[i][1]
|
| 241 |
+
attention_mask = np.ones(features_shapes[i][:2], dtype=np.int64)
|
| 242 |
+
feature_padding = ((0, 0), (0, features_pad_value), (0, 0))
|
| 243 |
+
attention_mask_padding = (feature_padding[0], feature_padding[1])
|
| 244 |
+
|
| 245 |
+
# To pad "beatsteps" and "extrapolated_beatstep".
|
| 246 |
+
else:
|
| 247 |
+
each_feature = each_feature.reshape(1, -1)
|
| 248 |
+
features_pad_value = max([*zip(*features_shapes)][0]) - features_shapes[i][0]
|
| 249 |
+
attention_mask = np.ones(features_shapes[i], dtype=np.int64).reshape(1, -1)
|
| 250 |
+
feature_padding = attention_mask_padding = ((0, 0), (0, features_pad_value))
|
| 251 |
+
|
| 252 |
+
each_padded_feature = np.pad(each_feature, feature_padding, "constant", constant_values=self.padding_value)
|
| 253 |
+
attention_mask = np.pad(
|
| 254 |
+
attention_mask, attention_mask_padding, "constant", constant_values=self.padding_value
|
| 255 |
+
)
|
| 256 |
+
|
| 257 |
+
if add_zero_line:
|
| 258 |
+
# if it is batched then we separate each examples using zero array
|
| 259 |
+
zero_array_len = max([*zip(*features_shapes)][1])
|
| 260 |
+
|
| 261 |
+
# we concatenate the zero array line here
|
| 262 |
+
each_padded_feature = np.concatenate(
|
| 263 |
+
[each_padded_feature, np.zeros([1, zero_array_len, self.feature_size])], axis=0
|
| 264 |
+
)
|
| 265 |
+
attention_mask = np.concatenate(
|
| 266 |
+
[attention_mask, np.zeros([1, zero_array_len], dtype=attention_mask.dtype)], axis=0
|
| 267 |
+
)
|
| 268 |
+
|
| 269 |
+
padded_features.append(each_padded_feature)
|
| 270 |
+
attention_masks.append(attention_mask)
|
| 271 |
+
|
| 272 |
+
padded_features = np.concatenate(padded_features, axis=0).astype(np.float32)
|
| 273 |
+
attention_masks = np.concatenate(attention_masks, axis=0).astype(np.int64)
|
| 274 |
+
|
| 275 |
+
return padded_features, attention_masks
|
| 276 |
+
|
| 277 |
+
def pad(
|
| 278 |
+
self,
|
| 279 |
+
inputs: BatchFeature,
|
| 280 |
+
is_batched: bool,
|
| 281 |
+
return_attention_mask: bool,
|
| 282 |
+
return_tensors: str | TensorType | None = None,
|
| 283 |
+
):
|
| 284 |
+
"""
|
| 285 |
+
Pads the inputs to same length and returns attention_mask.
|
| 286 |
+
|
| 287 |
+
Args:
|
| 288 |
+
inputs (`BatchFeature`):
|
| 289 |
+
Processed audio features.
|
| 290 |
+
is_batched (`bool`):
|
| 291 |
+
Whether inputs are batched or not.
|
| 292 |
+
return_attention_mask (`bool`):
|
| 293 |
+
Whether to return attention mask or not.
|
| 294 |
+
return_tensors (`str` or [`~utils.TensorType`], *optional*):
|
| 295 |
+
If set, will return tensors instead of list of python integers. Acceptable values are:
|
| 296 |
+
- `'pt'`: Return PyTorch `torch.Tensor` objects.
|
| 297 |
+
- `'np'`: Return Numpy `np.ndarray` objects.
|
| 298 |
+
If nothing is specified, it will return list of `np.ndarray` arrays.
|
| 299 |
+
Return:
|
| 300 |
+
`BatchFeature` with attention_mask, attention_mask_beatsteps and attention_mask_extrapolated_beatstep added
|
| 301 |
+
to it:
|
| 302 |
+
- **attention_mask** numpy.ndarray of shape `(batch_size, max_input_features_seq_length)` --
|
| 303 |
+
Example :
|
| 304 |
+
1, 1, 1, 0, 0 (audio 1, also here it is padded to max length of 5 that's why there are 2 zeros at
|
| 305 |
+
the end indicating they are padded)
|
| 306 |
+
|
| 307 |
+
0, 0, 0, 0, 0 (zero pad to separate audio 1 and 2)
|
| 308 |
+
|
| 309 |
+
1, 1, 1, 1, 1 (audio 2)
|
| 310 |
+
|
| 311 |
+
0, 0, 0, 0, 0 (zero pad to separate audio 2 and 3)
|
| 312 |
+
|
| 313 |
+
1, 1, 1, 1, 1 (audio 3)
|
| 314 |
+
- **attention_mask_beatsteps** numpy.ndarray of shape `(batch_size, max_beatsteps_seq_length)`
|
| 315 |
+
- **attention_mask_extrapolated_beatstep** numpy.ndarray of shape `(batch_size,
|
| 316 |
+
max_extrapolated_beatstep_seq_length)`
|
| 317 |
+
"""
|
| 318 |
+
|
| 319 |
+
processed_features_dict = {}
|
| 320 |
+
for feature_name, feature_value in inputs.items():
|
| 321 |
+
if feature_name == "input_features":
|
| 322 |
+
padded_feature_values, attention_mask = self._pad(feature_value, add_zero_line=True)
|
| 323 |
+
processed_features_dict[feature_name] = padded_feature_values
|
| 324 |
+
if return_attention_mask:
|
| 325 |
+
processed_features_dict["attention_mask"] = attention_mask
|
| 326 |
+
else:
|
| 327 |
+
padded_feature_values, attention_mask = self._pad(feature_value, add_zero_line=False)
|
| 328 |
+
processed_features_dict[feature_name] = padded_feature_values
|
| 329 |
+
if return_attention_mask:
|
| 330 |
+
processed_features_dict[f"attention_mask_{feature_name}"] = attention_mask
|
| 331 |
+
|
| 332 |
+
# If we are processing only one example, we should remove the zero array line since we don't need it to
|
| 333 |
+
# separate examples from each other.
|
| 334 |
+
if not is_batched and not return_attention_mask:
|
| 335 |
+
processed_features_dict["input_features"] = processed_features_dict["input_features"][:-1, ...]
|
| 336 |
+
|
| 337 |
+
outputs = BatchFeature(processed_features_dict, tensor_type=return_tensors)
|
| 338 |
+
|
| 339 |
+
return outputs
|
| 340 |
+
|
| 341 |
+
def __call__(
|
| 342 |
+
self,
|
| 343 |
+
audio: np.ndarray | list[float] | list[np.ndarray] | list[list[float]],
|
| 344 |
+
sampling_rate: int | list[int],
|
| 345 |
+
steps_per_beat: int = 2,
|
| 346 |
+
resample: bool | None = True,
|
| 347 |
+
return_attention_mask: bool | None = False,
|
| 348 |
+
return_tensors: str | TensorType | None = None,
|
| 349 |
+
**kwargs,
|
| 350 |
+
) -> BatchFeature:
|
| 351 |
+
"""
|
| 352 |
+
Main method to featurize and prepare for the model.
|
| 353 |
+
|
| 354 |
+
Args:
|
| 355 |
+
audio (`np.ndarray`, `List`):
|
| 356 |
+
The audio or batch of audio to be processed. Each audio can be a numpy array, a list of float values, a
|
| 357 |
+
list of numpy arrays or a list of list of float values.
|
| 358 |
+
sampling_rate (`int`):
|
| 359 |
+
The sampling rate at which the `audio` input was sampled. It is strongly recommended to pass
|
| 360 |
+
`sampling_rate` at the forward call to prevent silent errors.
|
| 361 |
+
steps_per_beat (`int`, *optional*, defaults to 2):
|
| 362 |
+
This is used in interpolating `beat_times`.
|
| 363 |
+
resample (`bool`, *optional*, defaults to `True`):
|
| 364 |
+
Determines whether to resample the audio to `sampling_rate` or not before processing. Must be True
|
| 365 |
+
during inference.
|
| 366 |
+
return_attention_mask (`bool` *optional*, defaults to `False`):
|
| 367 |
+
Denotes if attention_mask for input_features, beatsteps and extrapolated_beatstep will be given as
|
| 368 |
+
output or not. Automatically set to True for batched inputs.
|
| 369 |
+
return_tensors (`str` or [`~utils.TensorType`], *optional*):
|
| 370 |
+
If set, will return tensors instead of list of python integers. Acceptable values are:
|
| 371 |
+
- `'pt'`: Return PyTorch `torch.Tensor` objects.
|
| 372 |
+
- `'np'`: Return Numpy `np.ndarray` objects.
|
| 373 |
+
If nothing is specified, it will return list of `np.ndarray` arrays.
|
| 374 |
+
"""
|
| 375 |
+
|
| 376 |
+
requires_backends(self, ["librosa"])
|
| 377 |
+
is_batched = isinstance(audio, (list, tuple)) and isinstance(audio[0], (np.ndarray, tuple, list))
|
| 378 |
+
if is_batched:
|
| 379 |
+
# This enables the user to process files of different sampling_rate at same time
|
| 380 |
+
if not isinstance(sampling_rate, list):
|
| 381 |
+
raise ValueError(
|
| 382 |
+
"Please give sampling_rate of each audio separately when you are passing multiple raw_audios at the same time. "
|
| 383 |
+
f"Received {sampling_rate}, expected [audio_1_sr, ..., audio_n_sr]."
|
| 384 |
+
)
|
| 385 |
+
return_attention_mask = True if return_attention_mask is None else return_attention_mask
|
| 386 |
+
else:
|
| 387 |
+
audio = [audio]
|
| 388 |
+
sampling_rate = [sampling_rate]
|
| 389 |
+
return_attention_mask = False if return_attention_mask is None else return_attention_mask
|
| 390 |
+
|
| 391 |
+
batch_input_features, batch_beatsteps, batch_ext_beatstep = [], [], []
|
| 392 |
+
for single_raw_audio, single_sampling_rate in zip(audio, sampling_rate):
|
| 393 |
+
bpm, beat_times, confidence, estimates, essentia_beat_intervals = self.extract_rhythm(
|
| 394 |
+
audio=single_raw_audio
|
| 395 |
+
)
|
| 396 |
+
beatsteps = self.interpolate_beat_times(beat_times=beat_times, steps_per_beat=steps_per_beat, n_extend=1)
|
| 397 |
+
|
| 398 |
+
if self.sampling_rate != single_sampling_rate and self.sampling_rate is not None:
|
| 399 |
+
if resample:
|
| 400 |
+
# Change sampling_rate to self.sampling_rate
|
| 401 |
+
single_raw_audio = librosa.core.resample(
|
| 402 |
+
single_raw_audio,
|
| 403 |
+
orig_sr=single_sampling_rate,
|
| 404 |
+
target_sr=self.sampling_rate,
|
| 405 |
+
res_type="kaiser_best",
|
| 406 |
+
)
|
| 407 |
+
else:
|
| 408 |
+
warnings.warn(
|
| 409 |
+
f"The sampling_rate of the provided audio is different from the target sampling_rate "
|
| 410 |
+
f"of the Feature Extractor, {self.sampling_rate} vs {single_sampling_rate}. "
|
| 411 |
+
f"In these cases it is recommended to use `resample=True` in the `__call__` method to "
|
| 412 |
+
f"get the optimal behaviour."
|
| 413 |
+
)
|
| 414 |
+
|
| 415 |
+
single_sampling_rate = self.sampling_rate
|
| 416 |
+
start_sample = int(beatsteps[0] * single_sampling_rate)
|
| 417 |
+
end_sample = int(beatsteps[-1] * single_sampling_rate)
|
| 418 |
+
|
| 419 |
+
input_features, extrapolated_beatstep = self.preprocess_mel(
|
| 420 |
+
single_raw_audio[start_sample:end_sample], beatsteps - beatsteps[0]
|
| 421 |
+
)
|
| 422 |
+
|
| 423 |
+
mel_specs = self.mel_spectrogram(input_features.astype(np.float32))
|
| 424 |
+
|
| 425 |
+
# apply np.log to get log mel-spectrograms
|
| 426 |
+
log_mel_specs = np.log(np.clip(mel_specs, a_min=1e-6, a_max=None))
|
| 427 |
+
|
| 428 |
+
input_features = np.transpose(log_mel_specs, (0, -1, -2))
|
| 429 |
+
|
| 430 |
+
batch_input_features.append(input_features)
|
| 431 |
+
batch_beatsteps.append(beatsteps)
|
| 432 |
+
batch_ext_beatstep.append(extrapolated_beatstep)
|
| 433 |
+
|
| 434 |
+
output = BatchFeature(
|
| 435 |
+
{
|
| 436 |
+
"input_features": batch_input_features,
|
| 437 |
+
"beatsteps": batch_beatsteps,
|
| 438 |
+
"extrapolated_beatstep": batch_ext_beatstep,
|
| 439 |
+
}
|
| 440 |
+
)
|
| 441 |
+
|
| 442 |
+
output = self.pad(
|
| 443 |
+
output,
|
| 444 |
+
is_batched=is_batched,
|
| 445 |
+
return_attention_mask=return_attention_mask,
|
| 446 |
+
return_tensors=return_tensors,
|
| 447 |
+
)
|
| 448 |
+
|
| 449 |
+
return output
|
| 450 |
+
|
| 451 |
+
|
| 452 |
+
__all__ = ["Pop2PianoFeatureExtractor"]
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/__init__.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2024 The HuggingFace Team. All rights reserved.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
from typing import TYPE_CHECKING
|
| 15 |
+
|
| 16 |
+
from ...utils import _LazyModule
|
| 17 |
+
from ...utils.import_utils import define_import_structure
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
if TYPE_CHECKING:
|
| 21 |
+
from .configuration_sew_d import *
|
| 22 |
+
from .modeling_sew_d import *
|
| 23 |
+
else:
|
| 24 |
+
import sys
|
| 25 |
+
|
| 26 |
+
_file = globals()["__file__"]
|
| 27 |
+
sys.modules[__name__] = _LazyModule(__name__, _file, define_import_structure(_file), module_spec=__spec__)
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/configuration_sew_d.py
ADDED
|
@@ -0,0 +1,196 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2021 ASAPP Inc. and The HuggingFace Inc. team. All rights reserved.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
"""SEW-D model configuration"""
|
| 15 |
+
|
| 16 |
+
import functools
|
| 17 |
+
import operator
|
| 18 |
+
|
| 19 |
+
from huggingface_hub.dataclasses import strict
|
| 20 |
+
|
| 21 |
+
from ...configuration_utils import PreTrainedConfig
|
| 22 |
+
from ...utils import auto_docstring
|
| 23 |
+
|
| 24 |
+
|
| 25 |
+
@auto_docstring(checkpoint="BAAI/seggpt-vit-large")
|
| 26 |
+
@strict
|
| 27 |
+
class SEWDConfig(PreTrainedConfig):
|
| 28 |
+
r"""
|
| 29 |
+
squeeze_factor (`int`, *optional*, defaults to 2):
|
| 30 |
+
Sequence length downsampling factor after the encoder and upsampling factor after the transformer.
|
| 31 |
+
position_buckets (`int`, *optional*, defaults to 256):
|
| 32 |
+
The maximum size of relative position embeddings.
|
| 33 |
+
share_att_key (`bool`, *optional*, defaults to `True`):
|
| 34 |
+
Whether to share attention key with c2p and p2c.
|
| 35 |
+
relative_attention (`bool`, *optional*, defaults to `True`):
|
| 36 |
+
Whether to use relative position encoding.
|
| 37 |
+
pos_att_type (`tuple[str]`, *optional*, defaults to `("p2c", "c2p")`):
|
| 38 |
+
The type of relative position attention, it can be a combination of `("p2c", "c2p")`, e.g. `("p2c")`,
|
| 39 |
+
`("p2c", "c2p")`, `("p2c", "c2p")`.
|
| 40 |
+
norm_rel_ebd (`str`, *optional*, defaults to `"layer_norm"`):
|
| 41 |
+
Whether to use layer norm in relative embedding (`"layer_norm"` if yes)
|
| 42 |
+
feat_proj_dropout (`float`, *optional*, defaults to 0.0):
|
| 43 |
+
The dropout probability for output of the feature encoder.
|
| 44 |
+
final_dropout (`float`, *optional*, defaults to 0.1):
|
| 45 |
+
The dropout probability for the final projection layer of [`SEWDForCTC`].
|
| 46 |
+
feature_layer_norm_eps (`float`, *optional*, defaults to 1e-5):
|
| 47 |
+
The epsilon used by the layer normalization after the feature encoder.
|
| 48 |
+
feat_extract_norm (`str`, *optional*, defaults to `"group"`):
|
| 49 |
+
The norm to be applied to 1D convolutional layers in feature encoder. One of `"group"` for group
|
| 50 |
+
normalization of only the first 1D convolutional layer or `"layer"` for layer normalization of all 1D
|
| 51 |
+
convolutional layers.
|
| 52 |
+
feat_extract_activation (`str, `optional`, defaults to `"gelu"`):
|
| 53 |
+
The non-linear activation function (function or string) in the 1D convolutional layers of the feature
|
| 54 |
+
extractor. If string, `"gelu"`, `"relu"`, `"selu"` and `"gelu_new"` are supported.
|
| 55 |
+
conv_dim (`tuple[int]` or `list[int]`, *optional*, defaults to `(64, 128, 128, 128, 128, 256, 256, 256, 256, 512, 512, 512, 512)`):
|
| 56 |
+
A tuple of integers defining the number of input and output channels of each 1D convolutional layer in the
|
| 57 |
+
feature encoder. The length of *conv_dim* defines the number of 1D convolutional layers.
|
| 58 |
+
conv_stride (`tuple[int]` or `list[int]`, *optional*, defaults to `(5, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1)`):
|
| 59 |
+
A tuple of integers defining the stride of each 1D convolutional layer in the feature encoder. The length
|
| 60 |
+
of *conv_stride* defines the number of convolutional layers and has to match the length of *conv_dim*.
|
| 61 |
+
conv_kernel (`tuple[int]` or `list[int]`, *optional*, defaults to `(10, 3, 1, 3, 1, 3, 1, 3, 1, 2, 1, 2, 1)`):
|
| 62 |
+
A tuple of integers defining the kernel size of each 1D convolutional layer in the feature encoder. The
|
| 63 |
+
length of *conv_kernel* defines the number of convolutional layers and has to match the length of
|
| 64 |
+
*conv_dim*.
|
| 65 |
+
conv_bias (`bool`, *optional*, defaults to `False`):
|
| 66 |
+
Whether the 1D convolutional layers have a bias.
|
| 67 |
+
num_conv_pos_embeddings (`int`, *optional*, defaults to 128):
|
| 68 |
+
Number of convolutional positional embeddings. Defines the kernel size of 1D convolutional positional
|
| 69 |
+
embeddings layer.
|
| 70 |
+
num_conv_pos_embedding_groups (`int`, *optional*, defaults to 16):
|
| 71 |
+
Number of groups of 1D convolutional positional embeddings layer.
|
| 72 |
+
apply_spec_augment (`bool`, *optional*, defaults to `True`):
|
| 73 |
+
Whether to apply *SpecAugment* data augmentation to the outputs of the feature encoder. For reference see
|
| 74 |
+
[SpecAugment: A Simple Data Augmentation Method for Automatic Speech
|
| 75 |
+
Recognition](https://huggingface.co/papers/1904.08779).
|
| 76 |
+
mask_time_prob (`float`, *optional*, defaults to 0.05):
|
| 77 |
+
Percentage (between 0 and 1) of all feature vectors along the time axis which will be masked. The masking
|
| 78 |
+
procedure generates ''mask_time_prob*len(time_axis)/mask_time_length'' independent masks over the axis. If
|
| 79 |
+
reasoning from the probability of each feature vector to be chosen as the start of the vector span to be
|
| 80 |
+
masked, *mask_time_prob* should be `prob_vector_start*mask_time_length`. Note that overlap may decrease the
|
| 81 |
+
actual percentage of masked vectors. This is only relevant if `apply_spec_augment is True`.
|
| 82 |
+
mask_time_length (`int`, *optional*, defaults to 10):
|
| 83 |
+
Length of vector span along the time axis.
|
| 84 |
+
mask_time_min_masks (`int`, *optional*, defaults to 2),:
|
| 85 |
+
The minimum number of masks of length `mask_feature_length` generated along the time axis, each time step,
|
| 86 |
+
irrespectively of `mask_feature_prob`. Only relevant if ''mask_time_prob*len(time_axis)/mask_time_length <
|
| 87 |
+
mask_time_min_masks''
|
| 88 |
+
mask_feature_prob (`float`, *optional*, defaults to 0.0):
|
| 89 |
+
Percentage (between 0 and 1) of all feature vectors along the feature axis which will be masked. The
|
| 90 |
+
masking procedure generates ''mask_feature_prob*len(feature_axis)/mask_time_length'' independent masks over
|
| 91 |
+
the axis. If reasoning from the probability of each feature vector to be chosen as the start of the vector
|
| 92 |
+
span to be masked, *mask_feature_prob* should be `prob_vector_start*mask_feature_length`. Note that overlap
|
| 93 |
+
may decrease the actual percentage of masked vectors. This is only relevant if `apply_spec_augment is
|
| 94 |
+
True`.
|
| 95 |
+
mask_feature_length (`int`, *optional*, defaults to 10):
|
| 96 |
+
Length of vector span along the feature axis.
|
| 97 |
+
mask_feature_min_masks (`int`, *optional*, defaults to 0),:
|
| 98 |
+
The minimum number of masks of length `mask_feature_length` generated along the feature axis, each time
|
| 99 |
+
step, irrespectively of `mask_feature_prob`. Only relevant if
|
| 100 |
+
''mask_feature_prob*len(feature_axis)/mask_feature_length < mask_feature_min_masks''
|
| 101 |
+
diversity_loss_weight (`int`, *optional*, defaults to 0.1):
|
| 102 |
+
The weight of the codebook diversity loss component.
|
| 103 |
+
ctc_zero_infinity (`bool`, *optional*, defaults to `False`):
|
| 104 |
+
Whether to zero infinite losses and the associated gradients of `torch.nn.CTCLoss`. Infinite losses mainly
|
| 105 |
+
occur when the inputs are too short to be aligned to the targets. Only relevant when training an instance
|
| 106 |
+
of [`SEWDForCTC`].
|
| 107 |
+
use_weighted_layer_sum (`bool`, *optional*, defaults to `False`):
|
| 108 |
+
Whether to use a weighted average of layer outputs with learned weights. Only relevant when using an
|
| 109 |
+
instance of [`Wav2Vec2ForSequenceClassification`].
|
| 110 |
+
classifier_proj_size (`int`, *optional*, defaults to 256):
|
| 111 |
+
Dimensionality of the projection before token mean-pooling for classification.
|
| 112 |
+
|
| 113 |
+
Example:
|
| 114 |
+
|
| 115 |
+
```python
|
| 116 |
+
>>> from transformers import SEWDConfig, SEWDModel
|
| 117 |
+
|
| 118 |
+
>>> # Initializing a SEW-D asapp/sew-d-tiny-100k style configuration
|
| 119 |
+
>>> configuration = SEWDConfig()
|
| 120 |
+
|
| 121 |
+
>>> # Initializing a model (with random weights) from the asapp/sew-d-tiny-100k style configuration
|
| 122 |
+
>>> model = SEWDModel(configuration)
|
| 123 |
+
|
| 124 |
+
>>> # Accessing the model configuration
|
| 125 |
+
>>> configuration = model.config
|
| 126 |
+
```"""
|
| 127 |
+
|
| 128 |
+
model_type = "sew-d"
|
| 129 |
+
vocab_size: int = 32
|
| 130 |
+
hidden_size: int = 768
|
| 131 |
+
num_hidden_layers: int = 12
|
| 132 |
+
num_attention_heads: int = 12
|
| 133 |
+
intermediate_size: int = 3072
|
| 134 |
+
squeeze_factor: int = 2
|
| 135 |
+
max_position_embeddings: int = 512
|
| 136 |
+
position_buckets: int = 256
|
| 137 |
+
share_att_key: bool = True
|
| 138 |
+
relative_attention: bool = True
|
| 139 |
+
pos_att_type: list[str] | tuple[str, ...] = ("p2c", "c2p")
|
| 140 |
+
norm_rel_ebd: str = "layer_norm"
|
| 141 |
+
hidden_act: str = "gelu_python"
|
| 142 |
+
hidden_dropout: float | int = 0.1
|
| 143 |
+
activation_dropout: float | int = 0.1
|
| 144 |
+
attention_dropout: float | int = 0.1
|
| 145 |
+
feat_proj_dropout: float | int = 0.0
|
| 146 |
+
final_dropout: float | int = 0.1
|
| 147 |
+
initializer_range: float = 0.02
|
| 148 |
+
layer_norm_eps: float = 1e-7
|
| 149 |
+
feature_layer_norm_eps: float = 1e-5
|
| 150 |
+
feat_extract_norm: str = "group"
|
| 151 |
+
feat_extract_activation: str = "gelu"
|
| 152 |
+
conv_dim: list[int] | tuple[int, ...] = (64, 128, 128, 128, 128, 256, 256, 256, 256, 512, 512, 512, 512)
|
| 153 |
+
conv_stride: list[int] | tuple[int, ...] = (5, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1)
|
| 154 |
+
conv_kernel: list[int] | tuple[int, ...] = (10, 3, 1, 3, 1, 3, 1, 3, 1, 2, 1, 2, 1)
|
| 155 |
+
conv_bias: bool = False
|
| 156 |
+
num_conv_pos_embeddings: int = 128
|
| 157 |
+
num_conv_pos_embedding_groups: int = 16
|
| 158 |
+
apply_spec_augment: bool = True
|
| 159 |
+
mask_time_prob: float | int = 0.05
|
| 160 |
+
mask_time_length: int = 10
|
| 161 |
+
mask_time_min_masks: int = 2
|
| 162 |
+
mask_feature_prob: float | int = 0.0
|
| 163 |
+
mask_feature_length: int = 10
|
| 164 |
+
mask_feature_min_masks: int = 0
|
| 165 |
+
ctc_loss_reduction: str = "mean"
|
| 166 |
+
ctc_zero_infinity: bool = False
|
| 167 |
+
use_weighted_layer_sum: bool = False
|
| 168 |
+
classifier_proj_size: int = 256
|
| 169 |
+
pad_token_id: int | None = 0
|
| 170 |
+
bos_token_id: int | None = 1
|
| 171 |
+
eos_token_id: int | list[int] | None = 2
|
| 172 |
+
|
| 173 |
+
def __post_init__(self, **kwargs):
|
| 174 |
+
self.num_feat_extract_layers = len(self.conv_dim)
|
| 175 |
+
super().__post_init__(**kwargs)
|
| 176 |
+
|
| 177 |
+
def validate_architecture(self):
|
| 178 |
+
"""Part of `@strict`-powered validation. Validates the architecture of the config."""
|
| 179 |
+
if (
|
| 180 |
+
(len(self.conv_stride) != self.num_feat_extract_layers)
|
| 181 |
+
or (len(self.conv_kernel) != self.num_feat_extract_layers)
|
| 182 |
+
or (len(self.conv_dim) != self.num_feat_extract_layers)
|
| 183 |
+
):
|
| 184 |
+
raise ValueError(
|
| 185 |
+
"Configuration for convolutional layers is incorrect. "
|
| 186 |
+
"It is required that `len(config.conv_dim)` == `len(config.conv_stride)` == `len(config.conv_kernel)`, "
|
| 187 |
+
f"but is `len(config.conv_dim) = {len(self.conv_dim)}`, `len(config.conv_stride) "
|
| 188 |
+
f"= {len(self.conv_stride)}`, `len(config.conv_kernel) = {len(self.conv_kernel)}`."
|
| 189 |
+
)
|
| 190 |
+
|
| 191 |
+
@property
|
| 192 |
+
def inputs_to_logits_ratio(self):
|
| 193 |
+
return functools.reduce(operator.mul, self.conv_stride, 1)
|
| 194 |
+
|
| 195 |
+
|
| 196 |
+
__all__ = ["SEWDConfig"]
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/sew_d/modeling_sew_d.py
ADDED
|
@@ -0,0 +1,1621 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2021 ASAPP Inc. and the HuggingFace Inc. team. All rights reserved.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
"""PyTorch SEW model."""
|
| 15 |
+
|
| 16 |
+
import math
|
| 17 |
+
from collections.abc import Sequence
|
| 18 |
+
|
| 19 |
+
import numpy as np
|
| 20 |
+
import torch
|
| 21 |
+
from torch import nn
|
| 22 |
+
from torch.nn import CrossEntropyLoss, LayerNorm
|
| 23 |
+
|
| 24 |
+
from ... import initialization as init
|
| 25 |
+
from ...activations import ACT2FN
|
| 26 |
+
from ...integrations.deepspeed import is_deepspeed_zero3_enabled
|
| 27 |
+
from ...modeling_layers import GradientCheckpointingLayer
|
| 28 |
+
from ...modeling_outputs import BaseModelOutput, CausalLMOutput, SequenceClassifierOutput
|
| 29 |
+
from ...modeling_utils import PreTrainedModel, get_torch_context_manager_or_global_device
|
| 30 |
+
from ...utils import auto_docstring, logging
|
| 31 |
+
from .configuration_sew_d import SEWDConfig
|
| 32 |
+
|
| 33 |
+
|
| 34 |
+
logger = logging.get_logger(__name__)
|
| 35 |
+
|
| 36 |
+
_HIDDEN_STATES_START_POSITION = 1
|
| 37 |
+
|
| 38 |
+
|
| 39 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2._compute_mask_indices
|
| 40 |
+
def _compute_mask_indices(
|
| 41 |
+
shape: tuple[int, int],
|
| 42 |
+
mask_prob: float,
|
| 43 |
+
mask_length: int,
|
| 44 |
+
attention_mask: torch.LongTensor | None = None,
|
| 45 |
+
min_masks: int = 0,
|
| 46 |
+
) -> np.ndarray:
|
| 47 |
+
"""
|
| 48 |
+
Computes random mask spans for a given shape. Used to implement [SpecAugment: A Simple Data Augmentation Method for
|
| 49 |
+
ASR](https://huggingface.co/papers/1904.08779). Note that this method is not optimized to run on TPU and should be run on
|
| 50 |
+
CPU as part of the preprocessing during training.
|
| 51 |
+
|
| 52 |
+
Args:
|
| 53 |
+
shape: The shape for which to compute masks. This should be of a tuple of size 2 where
|
| 54 |
+
the first element is the batch size and the second element is the length of the axis to span.
|
| 55 |
+
mask_prob: The percentage of the whole axis (between 0 and 1) which will be masked. The number of
|
| 56 |
+
independently generated mask spans of length `mask_length` is computed by
|
| 57 |
+
`mask_prob*shape[1]/mask_length`. Note that due to overlaps, `mask_prob` is an upper bound and the
|
| 58 |
+
actual percentage will be smaller.
|
| 59 |
+
mask_length: size of the mask
|
| 60 |
+
min_masks: minimum number of masked spans
|
| 61 |
+
attention_mask: A (right-padded) attention mask which independently shortens the feature axis of
|
| 62 |
+
each batch dimension.
|
| 63 |
+
"""
|
| 64 |
+
batch_size, sequence_length = shape
|
| 65 |
+
|
| 66 |
+
if mask_length < 1:
|
| 67 |
+
raise ValueError("`mask_length` has to be bigger than 0.")
|
| 68 |
+
|
| 69 |
+
if mask_length > sequence_length:
|
| 70 |
+
raise ValueError(
|
| 71 |
+
f"`mask_length` has to be smaller than `sequence_length`, but got `mask_length`: {mask_length}"
|
| 72 |
+
f" and `sequence_length`: {sequence_length}`"
|
| 73 |
+
)
|
| 74 |
+
|
| 75 |
+
# epsilon is used for probabilistic rounding
|
| 76 |
+
epsilon = np.random.rand(1).item()
|
| 77 |
+
|
| 78 |
+
def compute_num_masked_span(input_length):
|
| 79 |
+
"""Given input length, compute how many spans should be masked"""
|
| 80 |
+
num_masked_span = int(mask_prob * input_length / mask_length + epsilon)
|
| 81 |
+
num_masked_span = max(num_masked_span, min_masks)
|
| 82 |
+
|
| 83 |
+
# make sure num masked span <= sequence_length
|
| 84 |
+
if num_masked_span * mask_length > sequence_length:
|
| 85 |
+
num_masked_span = sequence_length // mask_length
|
| 86 |
+
|
| 87 |
+
# make sure num_masked span is also <= input_length - (mask_length - 1)
|
| 88 |
+
if input_length - (mask_length - 1) < num_masked_span:
|
| 89 |
+
num_masked_span = max(input_length - (mask_length - 1), 0)
|
| 90 |
+
|
| 91 |
+
return num_masked_span
|
| 92 |
+
|
| 93 |
+
# compute number of masked spans in batch
|
| 94 |
+
input_lengths = (
|
| 95 |
+
attention_mask.detach().sum(-1).tolist()
|
| 96 |
+
if attention_mask is not None
|
| 97 |
+
else [sequence_length for _ in range(batch_size)]
|
| 98 |
+
)
|
| 99 |
+
|
| 100 |
+
# SpecAugment mask to fill
|
| 101 |
+
spec_aug_mask = np.zeros((batch_size, sequence_length), dtype=bool)
|
| 102 |
+
spec_aug_mask_idxs = []
|
| 103 |
+
|
| 104 |
+
max_num_masked_span = compute_num_masked_span(sequence_length)
|
| 105 |
+
|
| 106 |
+
if max_num_masked_span == 0:
|
| 107 |
+
return spec_aug_mask
|
| 108 |
+
|
| 109 |
+
for input_length in input_lengths:
|
| 110 |
+
# compute num of masked spans for this input
|
| 111 |
+
num_masked_span = compute_num_masked_span(input_length)
|
| 112 |
+
|
| 113 |
+
# get random indices to mask
|
| 114 |
+
spec_aug_mask_idx = np.random.choice(
|
| 115 |
+
np.arange(input_length - (mask_length - 1)), num_masked_span, replace=False
|
| 116 |
+
)
|
| 117 |
+
|
| 118 |
+
# pick first sampled index that will serve as a dummy index to pad vector
|
| 119 |
+
# to ensure same dimension for all batches due to probabilistic rounding
|
| 120 |
+
# Picking first sample just pads those vectors twice.
|
| 121 |
+
if len(spec_aug_mask_idx) == 0:
|
| 122 |
+
# this case can only happen if `input_length` is strictly smaller then
|
| 123 |
+
# `sequence_length` in which case the last token has to be a padding
|
| 124 |
+
# token which we can use as a dummy mask id
|
| 125 |
+
dummy_mask_idx = sequence_length - 1
|
| 126 |
+
else:
|
| 127 |
+
dummy_mask_idx = spec_aug_mask_idx[0]
|
| 128 |
+
|
| 129 |
+
spec_aug_mask_idx = np.concatenate(
|
| 130 |
+
[spec_aug_mask_idx, np.ones(max_num_masked_span - num_masked_span, dtype=np.int32) * dummy_mask_idx]
|
| 131 |
+
)
|
| 132 |
+
spec_aug_mask_idxs.append(spec_aug_mask_idx)
|
| 133 |
+
|
| 134 |
+
spec_aug_mask_idxs = np.array(spec_aug_mask_idxs)
|
| 135 |
+
|
| 136 |
+
# expand masked indices to masked spans
|
| 137 |
+
spec_aug_mask_idxs = np.broadcast_to(
|
| 138 |
+
spec_aug_mask_idxs[:, :, None], (batch_size, max_num_masked_span, mask_length)
|
| 139 |
+
)
|
| 140 |
+
spec_aug_mask_idxs = spec_aug_mask_idxs.reshape(batch_size, max_num_masked_span * mask_length)
|
| 141 |
+
|
| 142 |
+
# add offset to the starting indexes so that indexes now create a span
|
| 143 |
+
offsets = np.arange(mask_length)[None, None, :]
|
| 144 |
+
offsets = np.broadcast_to(offsets, (batch_size, max_num_masked_span, mask_length)).reshape(
|
| 145 |
+
batch_size, max_num_masked_span * mask_length
|
| 146 |
+
)
|
| 147 |
+
spec_aug_mask_idxs = spec_aug_mask_idxs + offsets
|
| 148 |
+
|
| 149 |
+
# ensure that we cannot have indices larger than sequence_length
|
| 150 |
+
if spec_aug_mask_idxs.max() > sequence_length - 1:
|
| 151 |
+
spec_aug_mask_idxs[spec_aug_mask_idxs > sequence_length - 1] = sequence_length - 1
|
| 152 |
+
|
| 153 |
+
# scatter indices to mask
|
| 154 |
+
np.put_along_axis(spec_aug_mask, spec_aug_mask_idxs, 1, -1)
|
| 155 |
+
|
| 156 |
+
return spec_aug_mask
|
| 157 |
+
|
| 158 |
+
|
| 159 |
+
def make_log_bucket_position(relative_pos, bucket_size, max_position):
|
| 160 |
+
sign = torch.sign(relative_pos)
|
| 161 |
+
mid = bucket_size // 2
|
| 162 |
+
abs_pos = torch.where(
|
| 163 |
+
(relative_pos < mid) & (relative_pos > -mid),
|
| 164 |
+
torch.tensor(mid - 1).type_as(relative_pos),
|
| 165 |
+
torch.abs(relative_pos),
|
| 166 |
+
)
|
| 167 |
+
log_pos = (
|
| 168 |
+
torch.ceil(torch.log(abs_pos / mid) / torch.log(torch.tensor((max_position - 1) / mid)) * (mid - 1)) + mid
|
| 169 |
+
)
|
| 170 |
+
bucket_pos = torch.where(abs_pos <= mid, relative_pos.type_as(log_pos), log_pos * sign)
|
| 171 |
+
return bucket_pos
|
| 172 |
+
|
| 173 |
+
|
| 174 |
+
def build_relative_position(query_size, key_size, bucket_size=-1, max_position=-1, device=None):
|
| 175 |
+
"""
|
| 176 |
+
Build relative position according to the query and key
|
| 177 |
+
|
| 178 |
+
We assume the absolute position of query \\(P_q\\) is range from (0, query_size) and the absolute position of key
|
| 179 |
+
\\(P_k\\) is range from (0, key_size), The relative positions from query to key is \\(R_{q \\rightarrow k} = P_q -
|
| 180 |
+
P_k\\)
|
| 181 |
+
|
| 182 |
+
Args:
|
| 183 |
+
query_size (int): the length of query
|
| 184 |
+
key_size (int): the length of key
|
| 185 |
+
bucket_size (int): the size of position bucket
|
| 186 |
+
max_position (int): the maximum allowed absolute position
|
| 187 |
+
device (`torch.device`): the device on which tensors will be created.
|
| 188 |
+
|
| 189 |
+
Return:
|
| 190 |
+
`torch.LongTensor`: A tensor with shape [1, query_size, key_size]
|
| 191 |
+
"""
|
| 192 |
+
|
| 193 |
+
q_ids = torch.arange(0, query_size, device=device)
|
| 194 |
+
k_ids = torch.arange(0, key_size, device=device)
|
| 195 |
+
rel_pos_ids = q_ids[:, None] - k_ids[None, :]
|
| 196 |
+
if bucket_size > 0 and max_position > 0:
|
| 197 |
+
rel_pos_ids = make_log_bucket_position(rel_pos_ids, bucket_size, max_position)
|
| 198 |
+
rel_pos_ids = rel_pos_ids.to(torch.long)
|
| 199 |
+
rel_pos_ids = rel_pos_ids[:query_size, :]
|
| 200 |
+
rel_pos_ids = rel_pos_ids.unsqueeze(0)
|
| 201 |
+
return rel_pos_ids
|
| 202 |
+
|
| 203 |
+
|
| 204 |
+
@torch.jit.script
|
| 205 |
+
def c2p_dynamic_expand(c2p_pos, query_layer, relative_pos):
|
| 206 |
+
return c2p_pos.expand([query_layer.size(0), query_layer.size(1), query_layer.size(2), relative_pos.size(-1)])
|
| 207 |
+
|
| 208 |
+
|
| 209 |
+
@torch.jit.script
|
| 210 |
+
def p2c_dynamic_expand(c2p_pos, query_layer, key_layer):
|
| 211 |
+
return c2p_pos.expand([query_layer.size(0), query_layer.size(1), key_layer.size(-2), key_layer.size(-2)])
|
| 212 |
+
|
| 213 |
+
|
| 214 |
+
@torch.jit.script
|
| 215 |
+
def pos_dynamic_expand(pos_index, p2c_att, key_layer):
|
| 216 |
+
return pos_index.expand(p2c_att.size()[:2] + (pos_index.size(-2), key_layer.size(-2)))
|
| 217 |
+
|
| 218 |
+
|
| 219 |
+
def get_mask(input, local_context):
|
| 220 |
+
if not isinstance(local_context, DropoutContext):
|
| 221 |
+
dropout = local_context
|
| 222 |
+
mask = None
|
| 223 |
+
else:
|
| 224 |
+
dropout = local_context.dropout
|
| 225 |
+
dropout *= local_context.scale
|
| 226 |
+
mask = local_context.mask if local_context.reuse_mask else None
|
| 227 |
+
|
| 228 |
+
if dropout > 0 and mask is None:
|
| 229 |
+
mask = (1 - torch.empty_like(input).bernoulli_(1 - dropout)).to(torch.bool)
|
| 230 |
+
|
| 231 |
+
if isinstance(local_context, DropoutContext):
|
| 232 |
+
if local_context.mask is None:
|
| 233 |
+
local_context.mask = mask
|
| 234 |
+
|
| 235 |
+
return mask, dropout
|
| 236 |
+
|
| 237 |
+
|
| 238 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2NoLayerNormConvLayer with Wav2Vec2->SEWD
|
| 239 |
+
class SEWDNoLayerNormConvLayer(GradientCheckpointingLayer):
|
| 240 |
+
def __init__(self, config, layer_id=0):
|
| 241 |
+
super().__init__()
|
| 242 |
+
self.in_conv_dim = config.conv_dim[layer_id - 1] if layer_id > 0 else 1
|
| 243 |
+
self.out_conv_dim = config.conv_dim[layer_id]
|
| 244 |
+
|
| 245 |
+
self.conv = nn.Conv1d(
|
| 246 |
+
self.in_conv_dim,
|
| 247 |
+
self.out_conv_dim,
|
| 248 |
+
kernel_size=config.conv_kernel[layer_id],
|
| 249 |
+
stride=config.conv_stride[layer_id],
|
| 250 |
+
bias=config.conv_bias,
|
| 251 |
+
)
|
| 252 |
+
self.activation = ACT2FN[config.feat_extract_activation]
|
| 253 |
+
|
| 254 |
+
def forward(self, hidden_states):
|
| 255 |
+
hidden_states = self.conv(hidden_states)
|
| 256 |
+
hidden_states = self.activation(hidden_states)
|
| 257 |
+
return hidden_states
|
| 258 |
+
|
| 259 |
+
|
| 260 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2LayerNormConvLayer with Wav2Vec2->SEWD
|
| 261 |
+
class SEWDLayerNormConvLayer(GradientCheckpointingLayer):
|
| 262 |
+
def __init__(self, config, layer_id=0):
|
| 263 |
+
super().__init__()
|
| 264 |
+
self.in_conv_dim = config.conv_dim[layer_id - 1] if layer_id > 0 else 1
|
| 265 |
+
self.out_conv_dim = config.conv_dim[layer_id]
|
| 266 |
+
|
| 267 |
+
self.conv = nn.Conv1d(
|
| 268 |
+
self.in_conv_dim,
|
| 269 |
+
self.out_conv_dim,
|
| 270 |
+
kernel_size=config.conv_kernel[layer_id],
|
| 271 |
+
stride=config.conv_stride[layer_id],
|
| 272 |
+
bias=config.conv_bias,
|
| 273 |
+
)
|
| 274 |
+
self.layer_norm = nn.LayerNorm(self.out_conv_dim, elementwise_affine=True)
|
| 275 |
+
self.activation = ACT2FN[config.feat_extract_activation]
|
| 276 |
+
|
| 277 |
+
def forward(self, hidden_states):
|
| 278 |
+
hidden_states = self.conv(hidden_states)
|
| 279 |
+
|
| 280 |
+
hidden_states = hidden_states.transpose(-2, -1)
|
| 281 |
+
hidden_states = self.layer_norm(hidden_states)
|
| 282 |
+
hidden_states = hidden_states.transpose(-2, -1)
|
| 283 |
+
|
| 284 |
+
hidden_states = self.activation(hidden_states)
|
| 285 |
+
return hidden_states
|
| 286 |
+
|
| 287 |
+
|
| 288 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2GroupNormConvLayer with Wav2Vec2->SEWD
|
| 289 |
+
class SEWDGroupNormConvLayer(GradientCheckpointingLayer):
|
| 290 |
+
def __init__(self, config, layer_id=0):
|
| 291 |
+
super().__init__()
|
| 292 |
+
self.in_conv_dim = config.conv_dim[layer_id - 1] if layer_id > 0 else 1
|
| 293 |
+
self.out_conv_dim = config.conv_dim[layer_id]
|
| 294 |
+
|
| 295 |
+
self.conv = nn.Conv1d(
|
| 296 |
+
self.in_conv_dim,
|
| 297 |
+
self.out_conv_dim,
|
| 298 |
+
kernel_size=config.conv_kernel[layer_id],
|
| 299 |
+
stride=config.conv_stride[layer_id],
|
| 300 |
+
bias=config.conv_bias,
|
| 301 |
+
)
|
| 302 |
+
self.activation = ACT2FN[config.feat_extract_activation]
|
| 303 |
+
|
| 304 |
+
self.layer_norm = nn.GroupNorm(num_groups=self.out_conv_dim, num_channels=self.out_conv_dim, affine=True)
|
| 305 |
+
|
| 306 |
+
def forward(self, hidden_states):
|
| 307 |
+
hidden_states = self.conv(hidden_states)
|
| 308 |
+
hidden_states = self.layer_norm(hidden_states)
|
| 309 |
+
hidden_states = self.activation(hidden_states)
|
| 310 |
+
return hidden_states
|
| 311 |
+
|
| 312 |
+
|
| 313 |
+
# Copied from transformers.models.sew.modeling_sew.SEWPositionalConvEmbedding with SEW->SEWD
|
| 314 |
+
class SEWDPositionalConvEmbedding(nn.Module):
|
| 315 |
+
def __init__(self, config):
|
| 316 |
+
super().__init__()
|
| 317 |
+
self.conv = nn.Conv1d(
|
| 318 |
+
config.hidden_size,
|
| 319 |
+
config.hidden_size,
|
| 320 |
+
kernel_size=config.num_conv_pos_embeddings,
|
| 321 |
+
padding=config.num_conv_pos_embeddings // 2,
|
| 322 |
+
groups=config.num_conv_pos_embedding_groups,
|
| 323 |
+
stride=config.squeeze_factor,
|
| 324 |
+
)
|
| 325 |
+
|
| 326 |
+
weight_norm = nn.utils.weight_norm
|
| 327 |
+
if hasattr(nn.utils.parametrizations, "weight_norm"):
|
| 328 |
+
weight_norm = nn.utils.parametrizations.weight_norm
|
| 329 |
+
|
| 330 |
+
if is_deepspeed_zero3_enabled():
|
| 331 |
+
import deepspeed
|
| 332 |
+
|
| 333 |
+
with deepspeed.zero.GatheredParameters(self.conv.weight, modifier_rank=0):
|
| 334 |
+
self.conv = weight_norm(self.conv, name="weight", dim=2)
|
| 335 |
+
if hasattr(self.conv, "parametrizations"):
|
| 336 |
+
weight_g = self.conv.parametrizations.weight.original0
|
| 337 |
+
weight_v = self.conv.parametrizations.weight.original1
|
| 338 |
+
else:
|
| 339 |
+
weight_g = self.conv.weight_g
|
| 340 |
+
weight_v = self.conv.weight_v
|
| 341 |
+
deepspeed.zero.register_external_parameter(self, weight_v)
|
| 342 |
+
deepspeed.zero.register_external_parameter(self, weight_g)
|
| 343 |
+
else:
|
| 344 |
+
self.conv = weight_norm(self.conv, name="weight", dim=2)
|
| 345 |
+
|
| 346 |
+
self.padding = SEWDSamePadLayer(config.num_conv_pos_embeddings)
|
| 347 |
+
self.activation = ACT2FN[config.feat_extract_activation]
|
| 348 |
+
|
| 349 |
+
def forward(self, hidden_states):
|
| 350 |
+
hidden_states = self.conv(hidden_states)
|
| 351 |
+
hidden_states = self.padding(hidden_states)
|
| 352 |
+
hidden_states = self.activation(hidden_states)
|
| 353 |
+
|
| 354 |
+
return hidden_states
|
| 355 |
+
|
| 356 |
+
|
| 357 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2SamePadLayer with Wav2Vec2->SEW
|
| 358 |
+
class SEWDSamePadLayer(nn.Module):
|
| 359 |
+
def __init__(self, num_conv_pos_embeddings):
|
| 360 |
+
super().__init__()
|
| 361 |
+
self.num_pad_remove = 1 if num_conv_pos_embeddings % 2 == 0 else 0
|
| 362 |
+
|
| 363 |
+
def forward(self, hidden_states):
|
| 364 |
+
if self.num_pad_remove > 0:
|
| 365 |
+
hidden_states = hidden_states[:, :, : -self.num_pad_remove]
|
| 366 |
+
return hidden_states
|
| 367 |
+
|
| 368 |
+
|
| 369 |
+
# Copied from transformers.models.sew.modeling_sew.SEWUpsampling with SEW->SEWD
|
| 370 |
+
class SEWDUpsampling(nn.Module):
|
| 371 |
+
def __init__(self, config):
|
| 372 |
+
super().__init__()
|
| 373 |
+
self.projection = nn.Linear(config.hidden_size, config.hidden_size * config.squeeze_factor)
|
| 374 |
+
self.activation = ACT2FN[config.feat_extract_activation]
|
| 375 |
+
self.squeeze_factor = config.squeeze_factor
|
| 376 |
+
|
| 377 |
+
def forward(self, hidden_states):
|
| 378 |
+
hidden_states = self.projection(hidden_states)
|
| 379 |
+
hidden_states = self.activation(hidden_states)
|
| 380 |
+
|
| 381 |
+
if self.squeeze_factor > 1:
|
| 382 |
+
# transform embedding channels to sequence length
|
| 383 |
+
bsz, src_len, src_embed_dim = hidden_states.size()
|
| 384 |
+
tgt_len = src_len * self.squeeze_factor
|
| 385 |
+
tgt_embed_dim = src_embed_dim // self.squeeze_factor
|
| 386 |
+
hidden_states = hidden_states.reshape(bsz, src_len, self.squeeze_factor, tgt_embed_dim)
|
| 387 |
+
hidden_states = hidden_states.reshape(bsz, tgt_len, tgt_embed_dim)
|
| 388 |
+
|
| 389 |
+
return hidden_states
|
| 390 |
+
|
| 391 |
+
|
| 392 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2FeatureEncoder with Wav2Vec2->SEWD
|
| 393 |
+
class SEWDFeatureEncoder(nn.Module):
|
| 394 |
+
"""Construct the features from raw audio waveform"""
|
| 395 |
+
|
| 396 |
+
def __init__(self, config):
|
| 397 |
+
super().__init__()
|
| 398 |
+
|
| 399 |
+
if config.feat_extract_norm == "group":
|
| 400 |
+
conv_layers = [SEWDGroupNormConvLayer(config, layer_id=0)] + [
|
| 401 |
+
SEWDNoLayerNormConvLayer(config, layer_id=i + 1) for i in range(config.num_feat_extract_layers - 1)
|
| 402 |
+
]
|
| 403 |
+
elif config.feat_extract_norm == "layer":
|
| 404 |
+
conv_layers = [SEWDLayerNormConvLayer(config, layer_id=i) for i in range(config.num_feat_extract_layers)]
|
| 405 |
+
else:
|
| 406 |
+
raise ValueError(
|
| 407 |
+
f"`config.feat_extract_norm` is {config.feat_extract_norm}, but has to be one of ['group', 'layer']"
|
| 408 |
+
)
|
| 409 |
+
self.conv_layers = nn.ModuleList(conv_layers)
|
| 410 |
+
self.gradient_checkpointing = False
|
| 411 |
+
self._requires_grad = True
|
| 412 |
+
|
| 413 |
+
def _freeze_parameters(self):
|
| 414 |
+
for param in self.parameters():
|
| 415 |
+
param.requires_grad = False
|
| 416 |
+
self._requires_grad = False
|
| 417 |
+
|
| 418 |
+
def forward(self, input_values):
|
| 419 |
+
hidden_states = input_values[:, None]
|
| 420 |
+
|
| 421 |
+
# make sure hidden_states require grad for gradient_checkpointing
|
| 422 |
+
if self._requires_grad and self.training:
|
| 423 |
+
hidden_states.requires_grad = True
|
| 424 |
+
|
| 425 |
+
for conv_layer in self.conv_layers:
|
| 426 |
+
hidden_states = conv_layer(hidden_states)
|
| 427 |
+
|
| 428 |
+
return hidden_states
|
| 429 |
+
|
| 430 |
+
|
| 431 |
+
class ContextPooler(nn.Module):
|
| 432 |
+
def __init__(self, config):
|
| 433 |
+
super().__init__()
|
| 434 |
+
self.dense = nn.Linear(config.pooler_hidden_size, config.pooler_hidden_size)
|
| 435 |
+
self.dropout = StableDropout(config.pooler_dropout)
|
| 436 |
+
self.config = config
|
| 437 |
+
|
| 438 |
+
def forward(self, hidden_states):
|
| 439 |
+
# We "pool" the model by simply taking the hidden state corresponding
|
| 440 |
+
# to the first token.
|
| 441 |
+
|
| 442 |
+
context_token = hidden_states[:, 0]
|
| 443 |
+
context_token = self.dropout(context_token)
|
| 444 |
+
pooled_output = self.dense(context_token)
|
| 445 |
+
pooled_output = ACT2FN[self.config.pooler_hidden_act](pooled_output)
|
| 446 |
+
return pooled_output
|
| 447 |
+
|
| 448 |
+
@property
|
| 449 |
+
def output_dim(self):
|
| 450 |
+
return self.config.hidden_size
|
| 451 |
+
|
| 452 |
+
|
| 453 |
+
class XSoftmax(torch.autograd.Function):
|
| 454 |
+
"""
|
| 455 |
+
Masked Softmax which is optimized for saving memory
|
| 456 |
+
|
| 457 |
+
Args:
|
| 458 |
+
input (`torch.tensor`): The input tensor that will apply softmax.
|
| 459 |
+
mask (`torch.IntTensor`):
|
| 460 |
+
The mask matrix where 0 indicate that element will be ignored in the softmax calculation.
|
| 461 |
+
dim (int): The dimension that will apply softmax
|
| 462 |
+
|
| 463 |
+
Example:
|
| 464 |
+
|
| 465 |
+
```python
|
| 466 |
+
>>> import torch
|
| 467 |
+
>>> from transformers.models.deberta_v2.modeling_deberta_v2 import XSoftmax
|
| 468 |
+
|
| 469 |
+
>>> # Make a tensor
|
| 470 |
+
>>> x = torch.randn([4, 20, 100])
|
| 471 |
+
|
| 472 |
+
>>> # Create a mask
|
| 473 |
+
>>> mask = (x > 0).int()
|
| 474 |
+
|
| 475 |
+
>>> # Specify the dimension to apply softmax
|
| 476 |
+
>>> dim = -1
|
| 477 |
+
|
| 478 |
+
>>> y = XSoftmax.apply(x, mask, dim)
|
| 479 |
+
```"""
|
| 480 |
+
|
| 481 |
+
@staticmethod
|
| 482 |
+
def forward(ctx, input, mask, dim):
|
| 483 |
+
ctx.dim = dim
|
| 484 |
+
rmask = ~(mask.to(torch.bool))
|
| 485 |
+
|
| 486 |
+
output = input.masked_fill(rmask, torch.tensor(torch.finfo(input.dtype).min))
|
| 487 |
+
output = torch.softmax(output, ctx.dim)
|
| 488 |
+
output.masked_fill_(rmask, 0)
|
| 489 |
+
ctx.save_for_backward(output)
|
| 490 |
+
return output
|
| 491 |
+
|
| 492 |
+
@staticmethod
|
| 493 |
+
def backward(ctx, grad_output):
|
| 494 |
+
(output,) = ctx.saved_tensors
|
| 495 |
+
inputGrad = torch._softmax_backward_data(grad_output, output, ctx.dim, output.dtype)
|
| 496 |
+
return inputGrad, None, None
|
| 497 |
+
|
| 498 |
+
@staticmethod
|
| 499 |
+
def symbolic(g, self, mask, dim):
|
| 500 |
+
import torch.onnx.symbolic_helper as sym_help
|
| 501 |
+
from torch.onnx.symbolic_opset9 import masked_fill, softmax
|
| 502 |
+
|
| 503 |
+
mask_cast_value = g.op("Cast", mask, to_i=sym_help.cast_pytorch_to_onnx["Long"])
|
| 504 |
+
r_mask = g.op(
|
| 505 |
+
"Cast",
|
| 506 |
+
g.op("Sub", g.op("Constant", value_t=torch.tensor(1, dtype=torch.int64)), mask_cast_value),
|
| 507 |
+
to_i=sym_help.cast_pytorch_to_onnx["Bool"],
|
| 508 |
+
)
|
| 509 |
+
output = masked_fill(
|
| 510 |
+
g, self, r_mask, g.op("Constant", value_t=torch.tensor(torch.finfo(self.type().dtype()).min))
|
| 511 |
+
)
|
| 512 |
+
output = softmax(g, output, dim)
|
| 513 |
+
return masked_fill(g, output, r_mask, g.op("Constant", value_t=torch.tensor(0, dtype=torch.bool)))
|
| 514 |
+
|
| 515 |
+
|
| 516 |
+
class DropoutContext:
|
| 517 |
+
def __init__(self):
|
| 518 |
+
self.dropout = 0
|
| 519 |
+
self.mask = None
|
| 520 |
+
self.scale = 1
|
| 521 |
+
self.reuse_mask = True
|
| 522 |
+
|
| 523 |
+
|
| 524 |
+
class XDropout(torch.autograd.Function):
|
| 525 |
+
"""Optimized dropout function to save computation and memory by using mask operation instead of multiplication."""
|
| 526 |
+
|
| 527 |
+
@staticmethod
|
| 528 |
+
def forward(ctx, input, local_ctx):
|
| 529 |
+
mask, dropout = get_mask(input, local_ctx)
|
| 530 |
+
ctx.scale = 1.0 / (1 - dropout)
|
| 531 |
+
if dropout > 0:
|
| 532 |
+
ctx.save_for_backward(mask)
|
| 533 |
+
return input.masked_fill(mask, 0) * ctx.scale
|
| 534 |
+
else:
|
| 535 |
+
return input
|
| 536 |
+
|
| 537 |
+
@staticmethod
|
| 538 |
+
def backward(ctx, grad_output):
|
| 539 |
+
if ctx.scale > 1:
|
| 540 |
+
(mask,) = ctx.saved_tensors
|
| 541 |
+
return grad_output.masked_fill(mask, 0) * ctx.scale, None
|
| 542 |
+
else:
|
| 543 |
+
return grad_output, None
|
| 544 |
+
|
| 545 |
+
@staticmethod
|
| 546 |
+
def symbolic(g: torch._C.Graph, input: torch._C.Value, local_ctx: float | DropoutContext) -> torch._C.Value:
|
| 547 |
+
from torch.onnx import symbolic_opset12
|
| 548 |
+
|
| 549 |
+
dropout_p = local_ctx
|
| 550 |
+
if isinstance(local_ctx, DropoutContext):
|
| 551 |
+
dropout_p = local_ctx.dropout
|
| 552 |
+
# StableDropout only calls this function when training.
|
| 553 |
+
train = True
|
| 554 |
+
# TODO: We should check if the opset_version being used to export
|
| 555 |
+
# is > 12 here, but there's no good way to do that. As-is, if the
|
| 556 |
+
# opset_version < 12, export will fail with a CheckerError.
|
| 557 |
+
# Once https://github.com/pytorch/pytorch/issues/78391 is fixed, do something like:
|
| 558 |
+
# if opset_version < 12:
|
| 559 |
+
# return torch.onnx.symbolic_opset9.dropout(g, input, dropout_p, train)
|
| 560 |
+
return symbolic_opset12.dropout(g, input, dropout_p, train)
|
| 561 |
+
|
| 562 |
+
|
| 563 |
+
class StableDropout(nn.Module):
|
| 564 |
+
"""
|
| 565 |
+
Optimized dropout module for stabilizing the training
|
| 566 |
+
|
| 567 |
+
Args:
|
| 568 |
+
drop_prob (float): the dropout probabilities
|
| 569 |
+
"""
|
| 570 |
+
|
| 571 |
+
def __init__(self, drop_prob):
|
| 572 |
+
super().__init__()
|
| 573 |
+
self.drop_prob = drop_prob
|
| 574 |
+
self.count = 0
|
| 575 |
+
self.context_stack = None
|
| 576 |
+
|
| 577 |
+
def forward(self, x):
|
| 578 |
+
"""
|
| 579 |
+
Call the module
|
| 580 |
+
|
| 581 |
+
Args:
|
| 582 |
+
x (`torch.tensor`): The input tensor to apply dropout
|
| 583 |
+
"""
|
| 584 |
+
if self.training and self.drop_prob > 0:
|
| 585 |
+
return XDropout.apply(x, self.get_context())
|
| 586 |
+
return x
|
| 587 |
+
|
| 588 |
+
def clear_context(self):
|
| 589 |
+
self.count = 0
|
| 590 |
+
self.context_stack = None
|
| 591 |
+
|
| 592 |
+
def init_context(self, reuse_mask=True, scale=1):
|
| 593 |
+
if self.context_stack is None:
|
| 594 |
+
self.context_stack = []
|
| 595 |
+
self.count = 0
|
| 596 |
+
for c in self.context_stack:
|
| 597 |
+
c.reuse_mask = reuse_mask
|
| 598 |
+
c.scale = scale
|
| 599 |
+
|
| 600 |
+
def get_context(self):
|
| 601 |
+
if self.context_stack is not None:
|
| 602 |
+
if self.count >= len(self.context_stack):
|
| 603 |
+
self.context_stack.append(DropoutContext())
|
| 604 |
+
ctx = self.context_stack[self.count]
|
| 605 |
+
ctx.dropout = self.drop_prob
|
| 606 |
+
self.count += 1
|
| 607 |
+
return ctx
|
| 608 |
+
else:
|
| 609 |
+
return self.drop_prob
|
| 610 |
+
|
| 611 |
+
|
| 612 |
+
class SEWDSelfOutput(nn.Module):
|
| 613 |
+
def __init__(self, config):
|
| 614 |
+
super().__init__()
|
| 615 |
+
self.dense = nn.Linear(config.hidden_size, config.hidden_size)
|
| 616 |
+
self.LayerNorm = LayerNorm(config.hidden_size, config.layer_norm_eps)
|
| 617 |
+
self.dropout = nn.Dropout(config.activation_dropout)
|
| 618 |
+
|
| 619 |
+
def forward(self, hidden_states, input_tensor):
|
| 620 |
+
hidden_states = self.dense(hidden_states)
|
| 621 |
+
hidden_states = self.dropout(hidden_states)
|
| 622 |
+
hidden_states = self.LayerNorm(hidden_states + input_tensor)
|
| 623 |
+
return hidden_states
|
| 624 |
+
|
| 625 |
+
|
| 626 |
+
class DisentangledSelfAttention(nn.Module):
|
| 627 |
+
"""
|
| 628 |
+
Disentangled self-attention module
|
| 629 |
+
|
| 630 |
+
Parameters:
|
| 631 |
+
config (`DebertaV2Config`):
|
| 632 |
+
A model config class instance with the configuration to build a new model. The schema is similar to
|
| 633 |
+
*BertConfig*, for more details, please refer [`DebertaV2Config`]
|
| 634 |
+
|
| 635 |
+
"""
|
| 636 |
+
|
| 637 |
+
def __init__(self, config):
|
| 638 |
+
super().__init__()
|
| 639 |
+
if config.hidden_size % config.num_attention_heads != 0:
|
| 640 |
+
raise ValueError(
|
| 641 |
+
f"The hidden size ({config.hidden_size}) is not a multiple of the number of attention "
|
| 642 |
+
f"heads ({config.num_attention_heads})"
|
| 643 |
+
)
|
| 644 |
+
self.num_attention_heads = config.num_attention_heads
|
| 645 |
+
_attention_head_size = config.hidden_size // config.num_attention_heads
|
| 646 |
+
self.attention_head_size = getattr(config, "attention_head_size", _attention_head_size)
|
| 647 |
+
self.all_head_size = self.num_attention_heads * self.attention_head_size
|
| 648 |
+
self.query_proj = nn.Linear(config.hidden_size, self.all_head_size, bias=True)
|
| 649 |
+
self.key_proj = nn.Linear(config.hidden_size, self.all_head_size, bias=True)
|
| 650 |
+
self.value_proj = nn.Linear(config.hidden_size, self.all_head_size, bias=True)
|
| 651 |
+
|
| 652 |
+
self.share_att_key = getattr(config, "share_att_key", False)
|
| 653 |
+
self.pos_att_type = config.pos_att_type if config.pos_att_type is not None else []
|
| 654 |
+
self.relative_attention = getattr(config, "relative_attention", False)
|
| 655 |
+
|
| 656 |
+
if self.relative_attention:
|
| 657 |
+
self.position_buckets = getattr(config, "position_buckets", -1)
|
| 658 |
+
self.max_relative_positions = getattr(config, "max_relative_positions", -1)
|
| 659 |
+
if self.max_relative_positions < 1:
|
| 660 |
+
self.max_relative_positions = config.max_position_embeddings
|
| 661 |
+
self.pos_ebd_size = self.max_relative_positions
|
| 662 |
+
if self.position_buckets > 0:
|
| 663 |
+
self.pos_ebd_size = self.position_buckets
|
| 664 |
+
|
| 665 |
+
self.pos_dropout = StableDropout(config.activation_dropout)
|
| 666 |
+
|
| 667 |
+
if not self.share_att_key:
|
| 668 |
+
if "c2p" in self.pos_att_type:
|
| 669 |
+
self.pos_key_proj = nn.Linear(config.hidden_size, self.all_head_size, bias=True)
|
| 670 |
+
if "p2c" in self.pos_att_type:
|
| 671 |
+
self.pos_query_proj = nn.Linear(config.hidden_size, self.all_head_size)
|
| 672 |
+
|
| 673 |
+
self.dropout = StableDropout(config.attention_dropout)
|
| 674 |
+
|
| 675 |
+
def transpose_for_scores(self, x, attention_heads):
|
| 676 |
+
new_x_shape = x.size()[:-1] + (attention_heads, -1)
|
| 677 |
+
x = x.view(new_x_shape)
|
| 678 |
+
return x.permute(0, 2, 1, 3).contiguous().view(-1, x.size(1), x.size(-1))
|
| 679 |
+
|
| 680 |
+
def forward(
|
| 681 |
+
self,
|
| 682 |
+
hidden_states,
|
| 683 |
+
attention_mask,
|
| 684 |
+
output_attentions=False,
|
| 685 |
+
query_states=None,
|
| 686 |
+
relative_pos=None,
|
| 687 |
+
rel_embeddings=None,
|
| 688 |
+
):
|
| 689 |
+
"""
|
| 690 |
+
Call the module
|
| 691 |
+
|
| 692 |
+
Args:
|
| 693 |
+
hidden_states (`torch.FloatTensor`):
|
| 694 |
+
Input states to the module usually the output from previous layer, it will be the Q,K and V in
|
| 695 |
+
*Attention(Q,K,V)*
|
| 696 |
+
|
| 697 |
+
attention_mask (`torch.BoolTensor`):
|
| 698 |
+
An attention mask matrix of shape [*B*, *N*, *N*] where *B* is the batch size, *N* is the maximum
|
| 699 |
+
sequence length in which element [i,j] = *1* means the *i* th token in the input can attend to the *j*
|
| 700 |
+
th token.
|
| 701 |
+
|
| 702 |
+
output_attentions (`bool`, *optional*):
|
| 703 |
+
Whether return the attention matrix.
|
| 704 |
+
|
| 705 |
+
query_states (`torch.FloatTensor`, *optional*):
|
| 706 |
+
The *Q* state in *Attention(Q,K,V)*.
|
| 707 |
+
|
| 708 |
+
relative_pos (`torch.LongTensor`):
|
| 709 |
+
The relative position encoding between the tokens in the sequence. It's of shape [*B*, *N*, *N*] with
|
| 710 |
+
values ranging in [*-max_relative_positions*, *max_relative_positions*].
|
| 711 |
+
|
| 712 |
+
rel_embeddings (`torch.FloatTensor`):
|
| 713 |
+
The embedding of relative distances. It's a tensor of shape [\\(2 \\times
|
| 714 |
+
\\text{max_relative_positions}\\), *hidden_size*].
|
| 715 |
+
|
| 716 |
+
|
| 717 |
+
"""
|
| 718 |
+
if query_states is None:
|
| 719 |
+
query_states = hidden_states
|
| 720 |
+
query_layer = self.transpose_for_scores(self.query_proj(query_states), self.num_attention_heads)
|
| 721 |
+
key_layer = self.transpose_for_scores(self.key_proj(hidden_states), self.num_attention_heads)
|
| 722 |
+
value_layer = self.transpose_for_scores(self.value_proj(hidden_states), self.num_attention_heads)
|
| 723 |
+
|
| 724 |
+
rel_att = None
|
| 725 |
+
# Take the dot product between "query" and "key" to get the raw attention scores.
|
| 726 |
+
scale_factor = 1
|
| 727 |
+
if "c2p" in self.pos_att_type:
|
| 728 |
+
scale_factor += 1
|
| 729 |
+
if "p2c" in self.pos_att_type:
|
| 730 |
+
scale_factor += 1
|
| 731 |
+
scale = torch.sqrt(torch.tensor(query_layer.size(-1), dtype=torch.float) * scale_factor)
|
| 732 |
+
attention_scores = torch.bmm(query_layer, key_layer.transpose(-1, -2) / scale.to(dtype=query_layer.dtype))
|
| 733 |
+
if self.relative_attention:
|
| 734 |
+
rel_embeddings = self.pos_dropout(rel_embeddings)
|
| 735 |
+
rel_att = self.disentangled_attention_bias(
|
| 736 |
+
query_layer, key_layer, relative_pos, rel_embeddings, scale_factor
|
| 737 |
+
)
|
| 738 |
+
|
| 739 |
+
if rel_att is not None:
|
| 740 |
+
attention_scores = attention_scores + rel_att
|
| 741 |
+
attention_scores = attention_scores.view(
|
| 742 |
+
-1, self.num_attention_heads, attention_scores.size(-2), attention_scores.size(-1)
|
| 743 |
+
)
|
| 744 |
+
|
| 745 |
+
# bsz x height x length x dimension
|
| 746 |
+
attention_probs = XSoftmax.apply(attention_scores, attention_mask, -1)
|
| 747 |
+
attention_probs = self.dropout(attention_probs)
|
| 748 |
+
context_layer = torch.bmm(
|
| 749 |
+
attention_probs.view(-1, attention_probs.size(-2), attention_probs.size(-1)), value_layer
|
| 750 |
+
)
|
| 751 |
+
context_layer = (
|
| 752 |
+
context_layer.view(-1, self.num_attention_heads, context_layer.size(-2), context_layer.size(-1))
|
| 753 |
+
.permute(0, 2, 1, 3)
|
| 754 |
+
.contiguous()
|
| 755 |
+
)
|
| 756 |
+
new_context_layer_shape = context_layer.size()[:-2] + (-1,)
|
| 757 |
+
context_layer = context_layer.view(new_context_layer_shape)
|
| 758 |
+
if output_attentions:
|
| 759 |
+
return (context_layer, attention_probs)
|
| 760 |
+
else:
|
| 761 |
+
return context_layer
|
| 762 |
+
|
| 763 |
+
def disentangled_attention_bias(self, query_layer, key_layer, relative_pos, rel_embeddings, scale_factor):
|
| 764 |
+
if relative_pos is None:
|
| 765 |
+
q = query_layer.size(-2)
|
| 766 |
+
relative_pos = build_relative_position(
|
| 767 |
+
q,
|
| 768 |
+
key_layer.size(-2),
|
| 769 |
+
bucket_size=self.position_buckets,
|
| 770 |
+
max_position=self.max_relative_positions,
|
| 771 |
+
device=query_layer.device,
|
| 772 |
+
)
|
| 773 |
+
if relative_pos.dim() == 2:
|
| 774 |
+
relative_pos = relative_pos.unsqueeze(0).unsqueeze(0)
|
| 775 |
+
elif relative_pos.dim() == 3:
|
| 776 |
+
relative_pos = relative_pos.unsqueeze(1)
|
| 777 |
+
# bsz x height x query x key
|
| 778 |
+
elif relative_pos.dim() != 4:
|
| 779 |
+
raise ValueError(f"Relative position ids must be of dim 2 or 3 or 4. {relative_pos.dim()}")
|
| 780 |
+
|
| 781 |
+
att_span = self.pos_ebd_size
|
| 782 |
+
relative_pos = relative_pos.to(device=query_layer.device, dtype=torch.long)
|
| 783 |
+
|
| 784 |
+
rel_embeddings = rel_embeddings[0 : att_span * 2, :].unsqueeze(0)
|
| 785 |
+
if self.share_att_key:
|
| 786 |
+
pos_query_layer = self.transpose_for_scores(
|
| 787 |
+
self.query_proj(rel_embeddings), self.num_attention_heads
|
| 788 |
+
).repeat(query_layer.size(0) // self.num_attention_heads, 1, 1)
|
| 789 |
+
pos_key_layer = self.transpose_for_scores(self.key_proj(rel_embeddings), self.num_attention_heads).repeat(
|
| 790 |
+
query_layer.size(0) // self.num_attention_heads, 1, 1
|
| 791 |
+
)
|
| 792 |
+
else:
|
| 793 |
+
if "c2p" in self.pos_att_type:
|
| 794 |
+
pos_key_layer = self.transpose_for_scores(
|
| 795 |
+
self.pos_key_proj(rel_embeddings), self.num_attention_heads
|
| 796 |
+
).repeat(query_layer.size(0) // self.num_attention_heads, 1, 1) # .split(self.all_head_size, dim=-1)
|
| 797 |
+
if "p2c" in self.pos_att_type:
|
| 798 |
+
pos_query_layer = self.transpose_for_scores(
|
| 799 |
+
self.pos_query_proj(rel_embeddings), self.num_attention_heads
|
| 800 |
+
).repeat(query_layer.size(0) // self.num_attention_heads, 1, 1) # .split(self.all_head_size, dim=-1)
|
| 801 |
+
|
| 802 |
+
score = 0
|
| 803 |
+
# content->position
|
| 804 |
+
if "c2p" in self.pos_att_type:
|
| 805 |
+
scale = torch.sqrt(torch.tensor(pos_key_layer.size(-1), dtype=torch.float) * scale_factor)
|
| 806 |
+
c2p_att = torch.bmm(query_layer, pos_key_layer.transpose(-1, -2))
|
| 807 |
+
c2p_pos = torch.clamp(relative_pos + att_span, 0, att_span * 2 - 1)
|
| 808 |
+
c2p_att = torch.gather(
|
| 809 |
+
c2p_att,
|
| 810 |
+
dim=-1,
|
| 811 |
+
index=c2p_pos.squeeze(0).expand([query_layer.size(0), query_layer.size(1), relative_pos.size(-1)]),
|
| 812 |
+
)
|
| 813 |
+
score += c2p_att / scale.to(dtype=c2p_att.dtype)
|
| 814 |
+
|
| 815 |
+
# position->content
|
| 816 |
+
if "p2c" in self.pos_att_type:
|
| 817 |
+
scale = torch.sqrt(torch.tensor(pos_query_layer.size(-1), dtype=torch.float) * scale_factor)
|
| 818 |
+
if key_layer.size(-2) != query_layer.size(-2):
|
| 819 |
+
r_pos = build_relative_position(
|
| 820 |
+
key_layer.size(-2),
|
| 821 |
+
key_layer.size(-2),
|
| 822 |
+
bucket_size=self.position_buckets,
|
| 823 |
+
max_position=self.max_relative_positions,
|
| 824 |
+
device=query_layer.device,
|
| 825 |
+
)
|
| 826 |
+
r_pos = r_pos.unsqueeze(0)
|
| 827 |
+
else:
|
| 828 |
+
r_pos = relative_pos
|
| 829 |
+
|
| 830 |
+
p2c_pos = torch.clamp(-r_pos + att_span, 0, att_span * 2 - 1)
|
| 831 |
+
p2c_att = torch.bmm(key_layer, pos_query_layer.transpose(-1, -2))
|
| 832 |
+
p2c_att = torch.gather(
|
| 833 |
+
p2c_att,
|
| 834 |
+
dim=-1,
|
| 835 |
+
index=p2c_pos.squeeze(0).expand([query_layer.size(0), key_layer.size(-2), key_layer.size(-2)]),
|
| 836 |
+
).transpose(-1, -2)
|
| 837 |
+
score += p2c_att / scale.to(dtype=p2c_att.dtype)
|
| 838 |
+
|
| 839 |
+
return score
|
| 840 |
+
|
| 841 |
+
|
| 842 |
+
class SEWDAttention(nn.Module):
|
| 843 |
+
def __init__(self, config):
|
| 844 |
+
super().__init__()
|
| 845 |
+
self.self = DisentangledSelfAttention(config)
|
| 846 |
+
self.output = SEWDSelfOutput(config)
|
| 847 |
+
self.config = config
|
| 848 |
+
|
| 849 |
+
def forward(
|
| 850 |
+
self,
|
| 851 |
+
hidden_states,
|
| 852 |
+
attention_mask,
|
| 853 |
+
output_attentions=False,
|
| 854 |
+
query_states=None,
|
| 855 |
+
relative_pos=None,
|
| 856 |
+
rel_embeddings=None,
|
| 857 |
+
):
|
| 858 |
+
self_output = self.self(
|
| 859 |
+
hidden_states,
|
| 860 |
+
attention_mask,
|
| 861 |
+
output_attentions,
|
| 862 |
+
query_states=query_states,
|
| 863 |
+
relative_pos=relative_pos,
|
| 864 |
+
rel_embeddings=rel_embeddings,
|
| 865 |
+
)
|
| 866 |
+
if output_attentions:
|
| 867 |
+
self_output, att_matrix = self_output
|
| 868 |
+
if query_states is None:
|
| 869 |
+
query_states = hidden_states
|
| 870 |
+
attention_output = self.output(self_output, query_states)
|
| 871 |
+
|
| 872 |
+
if output_attentions:
|
| 873 |
+
return (attention_output, att_matrix)
|
| 874 |
+
else:
|
| 875 |
+
return attention_output
|
| 876 |
+
|
| 877 |
+
|
| 878 |
+
# Copied from transformers.models.bert.modeling_bert.BertIntermediate with Bert->SEWD
|
| 879 |
+
class SEWDIntermediate(nn.Module):
|
| 880 |
+
def __init__(self, config):
|
| 881 |
+
super().__init__()
|
| 882 |
+
self.dense = nn.Linear(config.hidden_size, config.intermediate_size)
|
| 883 |
+
if isinstance(config.hidden_act, str):
|
| 884 |
+
self.intermediate_act_fn = ACT2FN[config.hidden_act]
|
| 885 |
+
else:
|
| 886 |
+
self.intermediate_act_fn = config.hidden_act
|
| 887 |
+
|
| 888 |
+
def forward(self, hidden_states: torch.Tensor) -> torch.Tensor:
|
| 889 |
+
hidden_states = self.dense(hidden_states)
|
| 890 |
+
hidden_states = self.intermediate_act_fn(hidden_states)
|
| 891 |
+
return hidden_states
|
| 892 |
+
|
| 893 |
+
|
| 894 |
+
class SEWDOutput(nn.Module):
|
| 895 |
+
def __init__(self, config):
|
| 896 |
+
super().__init__()
|
| 897 |
+
self.dense = nn.Linear(config.intermediate_size, config.hidden_size)
|
| 898 |
+
self.LayerNorm = LayerNorm(config.hidden_size, config.layer_norm_eps)
|
| 899 |
+
self.dropout = nn.Dropout(config.activation_dropout)
|
| 900 |
+
self.config = config
|
| 901 |
+
|
| 902 |
+
def forward(self, hidden_states, input_tensor):
|
| 903 |
+
hidden_states = self.dense(hidden_states)
|
| 904 |
+
hidden_states = self.dropout(hidden_states)
|
| 905 |
+
hidden_states = self.LayerNorm(hidden_states + input_tensor)
|
| 906 |
+
return hidden_states
|
| 907 |
+
|
| 908 |
+
|
| 909 |
+
class SEWDLayer(GradientCheckpointingLayer):
|
| 910 |
+
def __init__(self, config):
|
| 911 |
+
super().__init__()
|
| 912 |
+
self.attention = SEWDAttention(config)
|
| 913 |
+
self.intermediate = SEWDIntermediate(config)
|
| 914 |
+
self.output = SEWDOutput(config)
|
| 915 |
+
|
| 916 |
+
def forward(
|
| 917 |
+
self,
|
| 918 |
+
hidden_states,
|
| 919 |
+
attention_mask,
|
| 920 |
+
query_states=None,
|
| 921 |
+
relative_pos=None,
|
| 922 |
+
rel_embeddings=None,
|
| 923 |
+
output_attentions=False,
|
| 924 |
+
):
|
| 925 |
+
attention_output = self.attention(
|
| 926 |
+
hidden_states,
|
| 927 |
+
attention_mask,
|
| 928 |
+
output_attentions=output_attentions,
|
| 929 |
+
query_states=query_states,
|
| 930 |
+
relative_pos=relative_pos,
|
| 931 |
+
rel_embeddings=rel_embeddings,
|
| 932 |
+
)
|
| 933 |
+
if output_attentions:
|
| 934 |
+
attention_output, att_matrix = attention_output
|
| 935 |
+
intermediate_output = self.intermediate(attention_output)
|
| 936 |
+
layer_output = self.output(intermediate_output, attention_output)
|
| 937 |
+
if output_attentions:
|
| 938 |
+
return (layer_output, att_matrix)
|
| 939 |
+
else:
|
| 940 |
+
return layer_output
|
| 941 |
+
|
| 942 |
+
|
| 943 |
+
class ConvLayer(nn.Module):
|
| 944 |
+
def __init__(self, config):
|
| 945 |
+
super().__init__()
|
| 946 |
+
kernel_size = getattr(config, "conv_kernel_size", 3)
|
| 947 |
+
groups = getattr(config, "conv_groups", 1)
|
| 948 |
+
self.conv_act = getattr(config, "conv_act", "tanh")
|
| 949 |
+
self.conv = nn.Conv1d(
|
| 950 |
+
config.hidden_size, config.hidden_size, kernel_size, padding=(kernel_size - 1) // 2, groups=groups
|
| 951 |
+
)
|
| 952 |
+
self.LayerNorm = LayerNorm(config.hidden_size, config.layer_norm_eps)
|
| 953 |
+
self.dropout = StableDropout(config.hidden_dropout_prob)
|
| 954 |
+
self.config = config
|
| 955 |
+
|
| 956 |
+
def forward(self, hidden_states, residual_states, input_mask):
|
| 957 |
+
out = self.conv(hidden_states.permute(0, 2, 1).contiguous()).permute(0, 2, 1).contiguous()
|
| 958 |
+
rmask = (1 - input_mask).bool()
|
| 959 |
+
out.masked_fill_(rmask.unsqueeze(-1).expand(out.size()), 0)
|
| 960 |
+
out = ACT2FN[self.conv_act](self.dropout(out))
|
| 961 |
+
|
| 962 |
+
layer_norm_input = residual_states + out
|
| 963 |
+
output = self.LayerNorm(layer_norm_input).to(layer_norm_input)
|
| 964 |
+
|
| 965 |
+
if input_mask is None:
|
| 966 |
+
output_states = output
|
| 967 |
+
else:
|
| 968 |
+
if input_mask.dim() != layer_norm_input.dim():
|
| 969 |
+
if input_mask.dim() == 4:
|
| 970 |
+
input_mask = input_mask.squeeze(1).squeeze(1)
|
| 971 |
+
input_mask = input_mask.unsqueeze(2)
|
| 972 |
+
|
| 973 |
+
input_mask = input_mask.to(output.dtype)
|
| 974 |
+
output_states = output * input_mask
|
| 975 |
+
|
| 976 |
+
return output_states
|
| 977 |
+
|
| 978 |
+
|
| 979 |
+
class SEWDTransformerEncoder(nn.Module):
|
| 980 |
+
"""Modified BertEncoder with relative position bias support"""
|
| 981 |
+
|
| 982 |
+
def __init__(self, config):
|
| 983 |
+
super().__init__()
|
| 984 |
+
|
| 985 |
+
self.layer = nn.ModuleList([SEWDLayer(config) for _ in range(config.num_hidden_layers)])
|
| 986 |
+
self.relative_attention = getattr(config, "relative_attention", False)
|
| 987 |
+
|
| 988 |
+
if self.relative_attention:
|
| 989 |
+
self.max_relative_positions = getattr(config, "max_relative_positions", -1)
|
| 990 |
+
if self.max_relative_positions < 1:
|
| 991 |
+
self.max_relative_positions = config.max_position_embeddings
|
| 992 |
+
|
| 993 |
+
self.position_buckets = getattr(config, "position_buckets", -1)
|
| 994 |
+
pos_ebd_size = self.max_relative_positions * 2
|
| 995 |
+
|
| 996 |
+
if self.position_buckets > 0:
|
| 997 |
+
pos_ebd_size = self.position_buckets * 2
|
| 998 |
+
|
| 999 |
+
self.rel_embeddings = nn.Embedding(pos_ebd_size, config.hidden_size)
|
| 1000 |
+
|
| 1001 |
+
self.norm_rel_ebd = [x.strip() for x in getattr(config, "norm_rel_ebd", "none").lower().split("|")]
|
| 1002 |
+
|
| 1003 |
+
if "layer_norm" in self.norm_rel_ebd:
|
| 1004 |
+
self.LayerNorm = LayerNorm(config.hidden_size, config.layer_norm_eps, elementwise_affine=True)
|
| 1005 |
+
|
| 1006 |
+
self.conv = ConvLayer(config) if getattr(config, "conv_kernel_size", 0) > 0 else None
|
| 1007 |
+
self.gradient_checkpointing = False
|
| 1008 |
+
|
| 1009 |
+
def get_rel_embedding(self):
|
| 1010 |
+
rel_embeddings = self.rel_embeddings.weight if self.relative_attention else None
|
| 1011 |
+
if rel_embeddings is not None and ("layer_norm" in self.norm_rel_ebd):
|
| 1012 |
+
rel_embeddings = self.LayerNorm(rel_embeddings)
|
| 1013 |
+
return rel_embeddings
|
| 1014 |
+
|
| 1015 |
+
def get_attention_mask(self, attention_mask):
|
| 1016 |
+
if attention_mask.dim() <= 2:
|
| 1017 |
+
extended_attention_mask = attention_mask.unsqueeze(1).unsqueeze(2)
|
| 1018 |
+
attention_mask = extended_attention_mask * extended_attention_mask.squeeze(-2).unsqueeze(-1)
|
| 1019 |
+
elif attention_mask.dim() == 3:
|
| 1020 |
+
attention_mask = attention_mask.unsqueeze(1)
|
| 1021 |
+
|
| 1022 |
+
return attention_mask
|
| 1023 |
+
|
| 1024 |
+
def get_rel_pos(self, hidden_states, query_states=None, relative_pos=None):
|
| 1025 |
+
if self.relative_attention and relative_pos is None:
|
| 1026 |
+
q = query_states.size(-2) if query_states is not None else hidden_states.size(-2)
|
| 1027 |
+
relative_pos = build_relative_position(
|
| 1028 |
+
q,
|
| 1029 |
+
hidden_states.size(-2),
|
| 1030 |
+
bucket_size=self.position_buckets,
|
| 1031 |
+
max_position=self.max_relative_positions,
|
| 1032 |
+
device=hidden_states.device,
|
| 1033 |
+
)
|
| 1034 |
+
return relative_pos
|
| 1035 |
+
|
| 1036 |
+
def forward(
|
| 1037 |
+
self,
|
| 1038 |
+
hidden_states,
|
| 1039 |
+
attention_mask,
|
| 1040 |
+
output_hidden_states=True,
|
| 1041 |
+
output_attentions=False,
|
| 1042 |
+
query_states=None,
|
| 1043 |
+
relative_pos=None,
|
| 1044 |
+
return_dict=True,
|
| 1045 |
+
):
|
| 1046 |
+
if attention_mask.dim() <= 2:
|
| 1047 |
+
input_mask = attention_mask
|
| 1048 |
+
else:
|
| 1049 |
+
input_mask = attention_mask.sum(-2) > 0
|
| 1050 |
+
attention_mask = self.get_attention_mask(attention_mask)
|
| 1051 |
+
relative_pos = self.get_rel_pos(hidden_states, query_states, relative_pos)
|
| 1052 |
+
|
| 1053 |
+
all_hidden_states = () if output_hidden_states else None
|
| 1054 |
+
all_attentions = () if output_attentions else None
|
| 1055 |
+
|
| 1056 |
+
if isinstance(hidden_states, Sequence):
|
| 1057 |
+
next_kv = hidden_states[0]
|
| 1058 |
+
else:
|
| 1059 |
+
next_kv = hidden_states
|
| 1060 |
+
rel_embeddings = self.get_rel_embedding()
|
| 1061 |
+
output_states = next_kv
|
| 1062 |
+
for i, layer_module in enumerate(self.layer):
|
| 1063 |
+
if output_hidden_states:
|
| 1064 |
+
all_hidden_states = all_hidden_states + (output_states,)
|
| 1065 |
+
|
| 1066 |
+
output_states = layer_module(
|
| 1067 |
+
next_kv,
|
| 1068 |
+
attention_mask,
|
| 1069 |
+
query_states=query_states,
|
| 1070 |
+
relative_pos=relative_pos,
|
| 1071 |
+
rel_embeddings=rel_embeddings,
|
| 1072 |
+
output_attentions=output_attentions,
|
| 1073 |
+
)
|
| 1074 |
+
|
| 1075 |
+
if output_attentions:
|
| 1076 |
+
output_states, att_m = output_states
|
| 1077 |
+
|
| 1078 |
+
if i == 0 and self.conv is not None:
|
| 1079 |
+
output_states = self.conv(hidden_states, output_states, input_mask)
|
| 1080 |
+
|
| 1081 |
+
if query_states is not None:
|
| 1082 |
+
query_states = output_states
|
| 1083 |
+
if isinstance(hidden_states, Sequence):
|
| 1084 |
+
next_kv = hidden_states[i + 1] if i + 1 < len(self.layer) else None
|
| 1085 |
+
else:
|
| 1086 |
+
next_kv = output_states
|
| 1087 |
+
|
| 1088 |
+
if output_attentions:
|
| 1089 |
+
all_attentions = all_attentions + (att_m,)
|
| 1090 |
+
|
| 1091 |
+
if output_hidden_states:
|
| 1092 |
+
all_hidden_states = all_hidden_states + (output_states,)
|
| 1093 |
+
|
| 1094 |
+
if not return_dict:
|
| 1095 |
+
return tuple(v for v in [output_states, all_hidden_states, all_attentions] if v is not None)
|
| 1096 |
+
return BaseModelOutput(
|
| 1097 |
+
last_hidden_state=output_states, hidden_states=all_hidden_states, attentions=all_attentions
|
| 1098 |
+
)
|
| 1099 |
+
|
| 1100 |
+
|
| 1101 |
+
class SEWDEncoder(nn.Module):
|
| 1102 |
+
def __init__(self, config):
|
| 1103 |
+
super().__init__()
|
| 1104 |
+
self.config = config
|
| 1105 |
+
self.pos_conv_embed = SEWDPositionalConvEmbedding(config)
|
| 1106 |
+
self.pool = nn.AvgPool1d(config.squeeze_factor, config.squeeze_factor)
|
| 1107 |
+
self.encoder = SEWDTransformerEncoder(config)
|
| 1108 |
+
self.upsample = SEWDUpsampling(config)
|
| 1109 |
+
self.gradient_checkpointing = False
|
| 1110 |
+
|
| 1111 |
+
def forward(
|
| 1112 |
+
self,
|
| 1113 |
+
hidden_states: torch.tensor,
|
| 1114 |
+
attention_mask: torch.Tensor | None = None,
|
| 1115 |
+
output_attentions: bool = False,
|
| 1116 |
+
output_hidden_states: bool = False,
|
| 1117 |
+
return_dict: bool = True,
|
| 1118 |
+
):
|
| 1119 |
+
max_encoder_length = hidden_states.shape[1] // self.config.squeeze_factor
|
| 1120 |
+
if attention_mask is None:
|
| 1121 |
+
attention_mask = torch.ones(
|
| 1122 |
+
(hidden_states.shape[0], max_encoder_length), dtype=torch.long, device=hidden_states.device
|
| 1123 |
+
)
|
| 1124 |
+
else:
|
| 1125 |
+
# make sure padded tokens output 0
|
| 1126 |
+
expand_attention_mask = attention_mask.unsqueeze(-1).repeat(1, 1, hidden_states.shape[2])
|
| 1127 |
+
hidden_states[~expand_attention_mask.bool()] = 0.0
|
| 1128 |
+
|
| 1129 |
+
input_lengths = (attention_mask.long()).sum(-1)
|
| 1130 |
+
# apply pooling formula to get real output_lengths
|
| 1131 |
+
output_lengths = input_lengths // self.config.squeeze_factor
|
| 1132 |
+
attention_ids = (
|
| 1133 |
+
torch.arange(0, max_encoder_length, device=output_lengths.device)
|
| 1134 |
+
.view(1, -1)
|
| 1135 |
+
.expand(output_lengths.shape[0], -1)
|
| 1136 |
+
)
|
| 1137 |
+
attention_mask = (attention_ids < output_lengths.view(-1, 1)).long()
|
| 1138 |
+
|
| 1139 |
+
n_input_timesteps = hidden_states.shape[1]
|
| 1140 |
+
|
| 1141 |
+
hidden_states = hidden_states.transpose(1, 2)
|
| 1142 |
+
position_embeddings = self.pos_conv_embed(hidden_states)
|
| 1143 |
+
pooled_hidden_states = self.pool(hidden_states)
|
| 1144 |
+
min_length = min(position_embeddings.size(-1), pooled_hidden_states.size(-1))
|
| 1145 |
+
hidden_states = pooled_hidden_states[..., :min_length] + position_embeddings[..., :min_length]
|
| 1146 |
+
hidden_states = hidden_states.transpose(1, 2)
|
| 1147 |
+
|
| 1148 |
+
encoder_outputs = self.encoder(hidden_states, attention_mask, output_hidden_states, output_attentions)
|
| 1149 |
+
|
| 1150 |
+
hidden_states = self.upsample(encoder_outputs.last_hidden_state)
|
| 1151 |
+
if hidden_states.shape[1] < n_input_timesteps:
|
| 1152 |
+
hidden_states = nn.functional.pad(hidden_states, (0, 0, 0, n_input_timesteps - hidden_states.shape[1]))
|
| 1153 |
+
|
| 1154 |
+
if not return_dict:
|
| 1155 |
+
return tuple(
|
| 1156 |
+
v for v in [hidden_states, encoder_outputs.hidden_states, encoder_outputs.attentions] if v is not None
|
| 1157 |
+
)
|
| 1158 |
+
return BaseModelOutput(
|
| 1159 |
+
last_hidden_state=hidden_states,
|
| 1160 |
+
hidden_states=encoder_outputs.hidden_states,
|
| 1161 |
+
attentions=encoder_outputs.attentions,
|
| 1162 |
+
)
|
| 1163 |
+
|
| 1164 |
+
|
| 1165 |
+
@auto_docstring
|
| 1166 |
+
class SEWDPreTrainedModel(PreTrainedModel):
|
| 1167 |
+
config: SEWDConfig
|
| 1168 |
+
base_model_prefix = "sew-d"
|
| 1169 |
+
main_input_name = "input_values"
|
| 1170 |
+
input_modalities = "audio"
|
| 1171 |
+
supports_gradient_checkpointing = True
|
| 1172 |
+
|
| 1173 |
+
@torch.no_grad()
|
| 1174 |
+
def _init_weights(self, module):
|
| 1175 |
+
"""Initialize the weights"""
|
| 1176 |
+
if isinstance(module, SEWDPositionalConvEmbedding):
|
| 1177 |
+
init.normal_(
|
| 1178 |
+
module.conv.weight,
|
| 1179 |
+
mean=0,
|
| 1180 |
+
std=2 * math.sqrt(1 / (module.conv.kernel_size[0] * module.conv.in_channels)),
|
| 1181 |
+
)
|
| 1182 |
+
init.constant_(module.conv.bias, 0)
|
| 1183 |
+
elif isinstance(module, nn.Linear):
|
| 1184 |
+
init.normal_(module.weight, mean=0.0, std=self.config.initializer_range)
|
| 1185 |
+
elif isinstance(module, (nn.LayerNorm, nn.GroupNorm)):
|
| 1186 |
+
init.zeros_(module.bias)
|
| 1187 |
+
init.ones_(module.weight)
|
| 1188 |
+
elif isinstance(module, nn.Conv1d):
|
| 1189 |
+
if is_deepspeed_zero3_enabled():
|
| 1190 |
+
import deepspeed
|
| 1191 |
+
|
| 1192 |
+
if hasattr(module, "weight_v") and hasattr(module, "weight_g"):
|
| 1193 |
+
with deepspeed.zero.GatheredParameters([module.weight_v, module.weight_g], modifier_rank=0):
|
| 1194 |
+
init.kaiming_normal_(module.weight)
|
| 1195 |
+
else:
|
| 1196 |
+
with deepspeed.zero.GatheredParameters(module.weight, modifier_rank=0):
|
| 1197 |
+
init.kaiming_normal_(module.weight)
|
| 1198 |
+
else:
|
| 1199 |
+
init.kaiming_normal_(module.weight)
|
| 1200 |
+
elif isinstance(module, nn.Embedding):
|
| 1201 |
+
init.normal_(module.weight, mean=0.0, std=self.config.initializer_range)
|
| 1202 |
+
# Here we need the check explicitly, as we slice the weight in the `zeros_` call, so it looses the flag
|
| 1203 |
+
if module.padding_idx is not None and not getattr(module.weight, "_is_hf_initialized", False):
|
| 1204 |
+
init.zeros_(module.weight[module.padding_idx])
|
| 1205 |
+
|
| 1206 |
+
if isinstance(module, (nn.Linear, nn.Conv1d)) and module.bias is not None:
|
| 1207 |
+
init.zeros_(module.bias)
|
| 1208 |
+
|
| 1209 |
+
def _get_feat_extract_output_lengths(self, input_lengths: torch.LongTensor | int):
|
| 1210 |
+
"""
|
| 1211 |
+
Computes the output length of the convolutional layers
|
| 1212 |
+
"""
|
| 1213 |
+
|
| 1214 |
+
def _conv_out_length(input_length, kernel_size, stride):
|
| 1215 |
+
# 1D convolutional layer output length formula taken
|
| 1216 |
+
# from https://pytorch.org/docs/stable/generated/torch.nn.Conv1d.html
|
| 1217 |
+
return torch.div(input_length - kernel_size, stride, rounding_mode="floor") + 1
|
| 1218 |
+
|
| 1219 |
+
for kernel_size, stride in zip(self.config.conv_kernel, self.config.conv_stride):
|
| 1220 |
+
input_lengths = _conv_out_length(input_lengths, kernel_size, stride)
|
| 1221 |
+
|
| 1222 |
+
return input_lengths
|
| 1223 |
+
|
| 1224 |
+
def _get_feature_vector_attention_mask(self, feature_vector_length: int, attention_mask: torch.LongTensor):
|
| 1225 |
+
output_lengths = self._get_feat_extract_output_lengths(attention_mask.sum(-1)).to(torch.long)
|
| 1226 |
+
batch_size = attention_mask.shape[0]
|
| 1227 |
+
|
| 1228 |
+
attention_mask = torch.zeros(
|
| 1229 |
+
(batch_size, feature_vector_length), dtype=attention_mask.dtype, device=attention_mask.device
|
| 1230 |
+
)
|
| 1231 |
+
# these two operations makes sure that all values before the output lengths idxs are attended to
|
| 1232 |
+
attention_mask[(torch.arange(attention_mask.shape[0], device=attention_mask.device), output_lengths - 1)] = 1
|
| 1233 |
+
attention_mask = attention_mask.flip([-1]).cumsum(-1).flip([-1]).bool()
|
| 1234 |
+
return attention_mask
|
| 1235 |
+
|
| 1236 |
+
|
| 1237 |
+
@auto_docstring
|
| 1238 |
+
# Copied from transformers.models.sew.modeling_sew.SEWModel with SEW->SEWD, layer_norm_eps->feature_layer_norm_eps
|
| 1239 |
+
class SEWDModel(SEWDPreTrainedModel):
|
| 1240 |
+
def __init__(self, config: SEWDConfig):
|
| 1241 |
+
super().__init__(config)
|
| 1242 |
+
self.config = config
|
| 1243 |
+
self.feature_extractor = SEWDFeatureEncoder(config)
|
| 1244 |
+
self.layer_norm = nn.LayerNorm(config.conv_dim[-1], eps=config.feature_layer_norm_eps)
|
| 1245 |
+
|
| 1246 |
+
self.project_features = config.conv_dim[-1] != config.hidden_size
|
| 1247 |
+
if self.project_features:
|
| 1248 |
+
self.feature_projection = nn.Linear(config.conv_dim[-1], config.hidden_size)
|
| 1249 |
+
self.feature_dropout = nn.Dropout(config.feat_proj_dropout)
|
| 1250 |
+
|
| 1251 |
+
if config.mask_time_prob > 0.0 or config.mask_feature_prob > 0.0:
|
| 1252 |
+
self.masked_spec_embed = nn.Parameter(torch.Tensor(config.hidden_size).uniform_())
|
| 1253 |
+
|
| 1254 |
+
self.encoder = SEWDEncoder(config)
|
| 1255 |
+
|
| 1256 |
+
# Initialize weights and apply final processing
|
| 1257 |
+
self.post_init()
|
| 1258 |
+
|
| 1259 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2Model._mask_hidden_states
|
| 1260 |
+
def _mask_hidden_states(
|
| 1261 |
+
self,
|
| 1262 |
+
hidden_states: torch.FloatTensor,
|
| 1263 |
+
mask_time_indices: torch.FloatTensor | None = None,
|
| 1264 |
+
attention_mask: torch.LongTensor | None = None,
|
| 1265 |
+
):
|
| 1266 |
+
"""
|
| 1267 |
+
Masks extracted features along time axis and/or along feature axis according to
|
| 1268 |
+
[SpecAugment](https://huggingface.co/papers/1904.08779).
|
| 1269 |
+
"""
|
| 1270 |
+
|
| 1271 |
+
# `config.apply_spec_augment` can set masking to False
|
| 1272 |
+
if not getattr(self.config, "apply_spec_augment", True):
|
| 1273 |
+
return hidden_states
|
| 1274 |
+
|
| 1275 |
+
# generate indices & apply SpecAugment along time axis
|
| 1276 |
+
batch_size, sequence_length, hidden_size = hidden_states.size()
|
| 1277 |
+
|
| 1278 |
+
if mask_time_indices is not None:
|
| 1279 |
+
# apply SpecAugment along time axis with given mask_time_indices
|
| 1280 |
+
hidden_states[mask_time_indices] = self.masked_spec_embed.to(hidden_states.dtype)
|
| 1281 |
+
elif self.config.mask_time_prob > 0 and self.training:
|
| 1282 |
+
mask_time_indices = _compute_mask_indices(
|
| 1283 |
+
(batch_size, sequence_length),
|
| 1284 |
+
mask_prob=self.config.mask_time_prob,
|
| 1285 |
+
mask_length=self.config.mask_time_length,
|
| 1286 |
+
attention_mask=attention_mask,
|
| 1287 |
+
min_masks=self.config.mask_time_min_masks,
|
| 1288 |
+
)
|
| 1289 |
+
mask_time_indices = torch.tensor(mask_time_indices, device=hidden_states.device, dtype=torch.bool)
|
| 1290 |
+
hidden_states[mask_time_indices] = self.masked_spec_embed.to(hidden_states.dtype)
|
| 1291 |
+
|
| 1292 |
+
if self.config.mask_feature_prob > 0 and self.training:
|
| 1293 |
+
# generate indices & apply SpecAugment along feature axis
|
| 1294 |
+
mask_feature_indices = _compute_mask_indices(
|
| 1295 |
+
(batch_size, hidden_size),
|
| 1296 |
+
mask_prob=self.config.mask_feature_prob,
|
| 1297 |
+
mask_length=self.config.mask_feature_length,
|
| 1298 |
+
min_masks=self.config.mask_feature_min_masks,
|
| 1299 |
+
)
|
| 1300 |
+
mask_feature_indices = torch.tensor(mask_feature_indices, device=hidden_states.device, dtype=torch.bool)
|
| 1301 |
+
mask_feature_indices = mask_feature_indices[:, None].expand(-1, sequence_length, -1)
|
| 1302 |
+
hidden_states[mask_feature_indices] = 0
|
| 1303 |
+
|
| 1304 |
+
return hidden_states
|
| 1305 |
+
|
| 1306 |
+
@auto_docstring
|
| 1307 |
+
def forward(
|
| 1308 |
+
self,
|
| 1309 |
+
input_values: torch.Tensor | None,
|
| 1310 |
+
attention_mask: torch.Tensor | None = None,
|
| 1311 |
+
mask_time_indices: torch.FloatTensor | None = None,
|
| 1312 |
+
output_attentions: bool | None = None,
|
| 1313 |
+
output_hidden_states: bool | None = None,
|
| 1314 |
+
return_dict: bool | None = None,
|
| 1315 |
+
**kwargs,
|
| 1316 |
+
) -> tuple | BaseModelOutput:
|
| 1317 |
+
r"""
|
| 1318 |
+
mask_time_indices (`torch.BoolTensor` of shape `(batch_size, sequence_length)`, *optional*):
|
| 1319 |
+
Indices to mask extracted features for contrastive loss. When in training mode, model learns to predict
|
| 1320 |
+
masked extracted features in *config.proj_codevector_dim* space.
|
| 1321 |
+
"""
|
| 1322 |
+
output_attentions = output_attentions if output_attentions is not None else self.config.output_attentions
|
| 1323 |
+
output_hidden_states = (
|
| 1324 |
+
output_hidden_states if output_hidden_states is not None else self.config.output_hidden_states
|
| 1325 |
+
)
|
| 1326 |
+
return_dict = return_dict if return_dict is not None else self.config.return_dict
|
| 1327 |
+
|
| 1328 |
+
extract_features = self.feature_extractor(input_values)
|
| 1329 |
+
extract_features = extract_features.transpose(1, 2)
|
| 1330 |
+
extract_features = self.layer_norm(extract_features)
|
| 1331 |
+
|
| 1332 |
+
if self.project_features:
|
| 1333 |
+
extract_features = self.feature_projection(extract_features)
|
| 1334 |
+
hidden_states = self.feature_dropout(extract_features)
|
| 1335 |
+
|
| 1336 |
+
if attention_mask is not None:
|
| 1337 |
+
# compute reduced attention_mask corresponding to feature vectors
|
| 1338 |
+
attention_mask = self._get_feature_vector_attention_mask(hidden_states.shape[1], attention_mask)
|
| 1339 |
+
|
| 1340 |
+
hidden_states = self._mask_hidden_states(hidden_states, mask_time_indices=mask_time_indices)
|
| 1341 |
+
|
| 1342 |
+
encoder_outputs = self.encoder(
|
| 1343 |
+
hidden_states,
|
| 1344 |
+
attention_mask=attention_mask,
|
| 1345 |
+
output_attentions=output_attentions,
|
| 1346 |
+
output_hidden_states=output_hidden_states,
|
| 1347 |
+
return_dict=return_dict,
|
| 1348 |
+
)
|
| 1349 |
+
|
| 1350 |
+
hidden_states = encoder_outputs[0]
|
| 1351 |
+
|
| 1352 |
+
if not return_dict:
|
| 1353 |
+
return (hidden_states,) + encoder_outputs[1:]
|
| 1354 |
+
|
| 1355 |
+
return BaseModelOutput(
|
| 1356 |
+
last_hidden_state=hidden_states,
|
| 1357 |
+
hidden_states=encoder_outputs.hidden_states,
|
| 1358 |
+
attentions=encoder_outputs.attentions,
|
| 1359 |
+
)
|
| 1360 |
+
|
| 1361 |
+
|
| 1362 |
+
@auto_docstring(
|
| 1363 |
+
custom_intro="""
|
| 1364 |
+
SEW-D Model with a `language modeling` head on top for Connectionist Temporal Classification (CTC).
|
| 1365 |
+
"""
|
| 1366 |
+
)
|
| 1367 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2ForCTC with Wav2Vec2->SEWD, wav2vec2->sew_d, WAV2VEC2->SEWD
|
| 1368 |
+
class SEWDForCTC(SEWDPreTrainedModel):
|
| 1369 |
+
def __init__(self, config, target_lang: str | None = None):
|
| 1370 |
+
r"""
|
| 1371 |
+
target_lang (`str`, *optional*):
|
| 1372 |
+
Language id of adapter weights. Adapter weights are stored in the format adapter.<lang>.safetensors or
|
| 1373 |
+
adapter.<lang>.bin. Only relevant when using an instance of [`SEWDForCTC`] with adapters. Uses 'eng' by
|
| 1374 |
+
default.
|
| 1375 |
+
"""
|
| 1376 |
+
super().__init__(config)
|
| 1377 |
+
|
| 1378 |
+
self.sew_d = SEWDModel(config)
|
| 1379 |
+
self.dropout = nn.Dropout(config.final_dropout)
|
| 1380 |
+
|
| 1381 |
+
self.target_lang = target_lang
|
| 1382 |
+
|
| 1383 |
+
if config.vocab_size is None:
|
| 1384 |
+
raise ValueError(
|
| 1385 |
+
f"You are trying to instantiate {self.__class__} with a configuration that "
|
| 1386 |
+
"does not define the vocabulary size of the language model head. Please "
|
| 1387 |
+
"instantiate the model as follows: `SEWDForCTC.from_pretrained(..., vocab_size=vocab_size)`. "
|
| 1388 |
+
"or define `vocab_size` of your model's configuration."
|
| 1389 |
+
)
|
| 1390 |
+
output_hidden_size = (
|
| 1391 |
+
config.output_hidden_size if hasattr(config, "add_adapter") and config.add_adapter else config.hidden_size
|
| 1392 |
+
)
|
| 1393 |
+
self.lm_head = nn.Linear(output_hidden_size, config.vocab_size)
|
| 1394 |
+
|
| 1395 |
+
# Initialize weights and apply final processing
|
| 1396 |
+
self.post_init()
|
| 1397 |
+
|
| 1398 |
+
def tie_weights(self, **kwargs):
|
| 1399 |
+
"""
|
| 1400 |
+
This method overwrites [`~PreTrainedModel.tie_weights`] so that adapter weights can be correctly loaded when
|
| 1401 |
+
passing `target_lang=...` to `from_pretrained(...)`.
|
| 1402 |
+
|
| 1403 |
+
This method is **not** supposed to be called by the user and is prone to be changed in the future.
|
| 1404 |
+
"""
|
| 1405 |
+
|
| 1406 |
+
if get_torch_context_manager_or_global_device() == torch.device("meta"):
|
| 1407 |
+
return
|
| 1408 |
+
|
| 1409 |
+
# Note that `tie_weights` is usually used to tie input and output embedding weights. The method is re-purposed to
|
| 1410 |
+
# correctly load adapter layers for SEWD so that we do not have to introduce a new API to
|
| 1411 |
+
# [`PreTrainedModel`]. While slightly hacky, SEWD never has to tie input and output embeddings, so that it is
|
| 1412 |
+
# ok to repurpose this function here.
|
| 1413 |
+
target_lang = self.target_lang
|
| 1414 |
+
|
| 1415 |
+
if target_lang is not None and getattr(self.config, "adapter_attn_dim", None) is None:
|
| 1416 |
+
raise ValueError(f"Cannot pass `target_lang`: {target_lang} if `config.adapter_attn_dim` is not defined.")
|
| 1417 |
+
elif target_lang is None and getattr(self.config, "adapter_attn_dim", None) is not None:
|
| 1418 |
+
logger.info("By default `target_lang` is set to 'eng'.")
|
| 1419 |
+
elif target_lang is not None:
|
| 1420 |
+
self.load_adapter(target_lang, force_load=True)
|
| 1421 |
+
|
| 1422 |
+
def freeze_feature_encoder(self):
|
| 1423 |
+
"""
|
| 1424 |
+
Calling this function will disable the gradient computation for the feature encoder so that its parameter will
|
| 1425 |
+
not be updated during training.
|
| 1426 |
+
"""
|
| 1427 |
+
self.sew_d.feature_extractor._freeze_parameters()
|
| 1428 |
+
|
| 1429 |
+
def freeze_base_model(self):
|
| 1430 |
+
"""
|
| 1431 |
+
Calling this function will disable the gradient computation for the base model so that its parameters will not
|
| 1432 |
+
be updated during training. Only the classification head will be updated.
|
| 1433 |
+
"""
|
| 1434 |
+
for param in self.sew_d.parameters():
|
| 1435 |
+
param.requires_grad = False
|
| 1436 |
+
|
| 1437 |
+
@auto_docstring
|
| 1438 |
+
def forward(
|
| 1439 |
+
self,
|
| 1440 |
+
input_values: torch.Tensor | None,
|
| 1441 |
+
attention_mask: torch.Tensor | None = None,
|
| 1442 |
+
output_attentions: bool | None = None,
|
| 1443 |
+
output_hidden_states: bool | None = None,
|
| 1444 |
+
return_dict: bool | None = None,
|
| 1445 |
+
labels: torch.Tensor | None = None,
|
| 1446 |
+
**kwargs,
|
| 1447 |
+
) -> tuple | CausalLMOutput:
|
| 1448 |
+
r"""
|
| 1449 |
+
labels (`torch.LongTensor` of shape `(batch_size, target_length)`, *optional*):
|
| 1450 |
+
Labels for connectionist temporal classification. Note that `target_length` has to be smaller or equal to
|
| 1451 |
+
the sequence length of the output logits. Indices are selected in `[-100, 0, ..., config.vocab_size - 1]`.
|
| 1452 |
+
All labels set to `-100` are ignored (masked), the loss is only computed for labels in `[0, ...,
|
| 1453 |
+
config.vocab_size - 1]`.
|
| 1454 |
+
"""
|
| 1455 |
+
return_dict = return_dict if return_dict is not None else self.config.return_dict
|
| 1456 |
+
|
| 1457 |
+
if labels is not None and labels.max() >= self.config.vocab_size:
|
| 1458 |
+
raise ValueError(f"Label values must be <= vocab_size: {self.config.vocab_size}")
|
| 1459 |
+
|
| 1460 |
+
outputs = self.sew_d(
|
| 1461 |
+
input_values,
|
| 1462 |
+
attention_mask=attention_mask,
|
| 1463 |
+
output_attentions=output_attentions,
|
| 1464 |
+
output_hidden_states=output_hidden_states,
|
| 1465 |
+
return_dict=return_dict,
|
| 1466 |
+
)
|
| 1467 |
+
|
| 1468 |
+
hidden_states = outputs[0]
|
| 1469 |
+
hidden_states = self.dropout(hidden_states)
|
| 1470 |
+
|
| 1471 |
+
logits = self.lm_head(hidden_states)
|
| 1472 |
+
|
| 1473 |
+
loss = None
|
| 1474 |
+
if labels is not None:
|
| 1475 |
+
# retrieve loss input_lengths from attention_mask
|
| 1476 |
+
attention_mask = (
|
| 1477 |
+
attention_mask if attention_mask is not None else torch.ones_like(input_values, dtype=torch.long)
|
| 1478 |
+
)
|
| 1479 |
+
input_lengths = self._get_feat_extract_output_lengths(attention_mask.sum(-1)).to(torch.long)
|
| 1480 |
+
|
| 1481 |
+
# assuming that padded tokens are filled with -100
|
| 1482 |
+
# when not being attended to
|
| 1483 |
+
labels_mask = labels >= 0
|
| 1484 |
+
target_lengths = labels_mask.sum(-1)
|
| 1485 |
+
flattened_targets = labels.masked_select(labels_mask)
|
| 1486 |
+
|
| 1487 |
+
# ctc_loss doesn't support fp16
|
| 1488 |
+
log_probs = nn.functional.log_softmax(logits, dim=-1, dtype=torch.float32).transpose(0, 1)
|
| 1489 |
+
|
| 1490 |
+
with torch.backends.cudnn.flags(enabled=False):
|
| 1491 |
+
loss = nn.functional.ctc_loss(
|
| 1492 |
+
log_probs,
|
| 1493 |
+
flattened_targets,
|
| 1494 |
+
input_lengths,
|
| 1495 |
+
target_lengths,
|
| 1496 |
+
blank=self.config.pad_token_id,
|
| 1497 |
+
reduction=self.config.ctc_loss_reduction,
|
| 1498 |
+
zero_infinity=self.config.ctc_zero_infinity,
|
| 1499 |
+
)
|
| 1500 |
+
|
| 1501 |
+
if not return_dict:
|
| 1502 |
+
output = (logits,) + outputs[_HIDDEN_STATES_START_POSITION:]
|
| 1503 |
+
return ((loss,) + output) if loss is not None else output
|
| 1504 |
+
|
| 1505 |
+
return CausalLMOutput(
|
| 1506 |
+
loss=loss, logits=logits, hidden_states=outputs.hidden_states, attentions=outputs.attentions
|
| 1507 |
+
)
|
| 1508 |
+
|
| 1509 |
+
|
| 1510 |
+
@auto_docstring(
|
| 1511 |
+
custom_intro="""
|
| 1512 |
+
SEWD Model with a sequence classification head on top (a linear layer over the pooled output) for tasks like SUPERB
|
| 1513 |
+
Keyword Spotting.
|
| 1514 |
+
"""
|
| 1515 |
+
)
|
| 1516 |
+
# Copied from transformers.models.wav2vec2.modeling_wav2vec2.Wav2Vec2ForSequenceClassification with Wav2Vec2->SEWD, wav2vec2->sew_d, WAV2VEC2->SEWD
|
| 1517 |
+
class SEWDForSequenceClassification(SEWDPreTrainedModel):
|
| 1518 |
+
def __init__(self, config):
|
| 1519 |
+
super().__init__(config)
|
| 1520 |
+
|
| 1521 |
+
if hasattr(config, "add_adapter") and config.add_adapter:
|
| 1522 |
+
raise ValueError(
|
| 1523 |
+
"Sequence classification does not support the use of SEWD adapters (config.add_adapter=True)"
|
| 1524 |
+
)
|
| 1525 |
+
self.sew_d = SEWDModel(config)
|
| 1526 |
+
num_layers = config.num_hidden_layers + 1 # transformer layers + input embeddings
|
| 1527 |
+
if config.use_weighted_layer_sum:
|
| 1528 |
+
self.layer_weights = nn.Parameter(torch.ones(num_layers) / num_layers)
|
| 1529 |
+
self.projector = nn.Linear(config.hidden_size, config.classifier_proj_size)
|
| 1530 |
+
self.classifier = nn.Linear(config.classifier_proj_size, config.num_labels)
|
| 1531 |
+
|
| 1532 |
+
# Initialize weights and apply final processing
|
| 1533 |
+
self.post_init()
|
| 1534 |
+
|
| 1535 |
+
def freeze_feature_encoder(self):
|
| 1536 |
+
"""
|
| 1537 |
+
Calling this function will disable the gradient computation for the feature encoder so that its parameter will
|
| 1538 |
+
not be updated during training.
|
| 1539 |
+
"""
|
| 1540 |
+
self.sew_d.feature_extractor._freeze_parameters()
|
| 1541 |
+
|
| 1542 |
+
def freeze_base_model(self):
|
| 1543 |
+
"""
|
| 1544 |
+
Calling this function will disable the gradient computation for the base model so that its parameters will not
|
| 1545 |
+
be updated during training. Only the classification head will be updated.
|
| 1546 |
+
"""
|
| 1547 |
+
for param in self.sew_d.parameters():
|
| 1548 |
+
param.requires_grad = False
|
| 1549 |
+
|
| 1550 |
+
@auto_docstring
|
| 1551 |
+
def forward(
|
| 1552 |
+
self,
|
| 1553 |
+
input_values: torch.Tensor | None,
|
| 1554 |
+
attention_mask: torch.Tensor | None = None,
|
| 1555 |
+
output_attentions: bool | None = None,
|
| 1556 |
+
output_hidden_states: bool | None = None,
|
| 1557 |
+
return_dict: bool | None = None,
|
| 1558 |
+
labels: torch.Tensor | None = None,
|
| 1559 |
+
**kwargs,
|
| 1560 |
+
) -> tuple | SequenceClassifierOutput:
|
| 1561 |
+
r"""
|
| 1562 |
+
input_values (`torch.FloatTensor` of shape `(batch_size, sequence_length)`):
|
| 1563 |
+
Float values of input raw speech waveform. Values can be obtained by loading a `.flac` or `.wav` audio file
|
| 1564 |
+
into an array of type `list[float]`, a `numpy.ndarray` or a `torch.Tensor`, *e.g.* via the torchcodec library
|
| 1565 |
+
(`pip install torchcodec`) or the soundfile library (`pip install soundfile`).
|
| 1566 |
+
To prepare the array into `input_values`, the [`AutoProcessor`] should be used for padding and conversion
|
| 1567 |
+
into a tensor of type `torch.FloatTensor`. See [`SEWDProcessor.__call__`] for details.
|
| 1568 |
+
labels (`torch.LongTensor` of shape `(batch_size,)`, *optional*):
|
| 1569 |
+
Labels for computing the sequence classification/regression loss. Indices should be in `[0, ...,
|
| 1570 |
+
config.num_labels - 1]`. If `config.num_labels == 1` a regression loss is computed (Mean-Square loss), If
|
| 1571 |
+
`config.num_labels > 1` a classification loss is computed (Cross-Entropy).
|
| 1572 |
+
"""
|
| 1573 |
+
|
| 1574 |
+
return_dict = return_dict if return_dict is not None else self.config.return_dict
|
| 1575 |
+
output_hidden_states = True if self.config.use_weighted_layer_sum else output_hidden_states
|
| 1576 |
+
|
| 1577 |
+
outputs = self.sew_d(
|
| 1578 |
+
input_values,
|
| 1579 |
+
attention_mask=attention_mask,
|
| 1580 |
+
output_attentions=output_attentions,
|
| 1581 |
+
output_hidden_states=output_hidden_states,
|
| 1582 |
+
return_dict=return_dict,
|
| 1583 |
+
)
|
| 1584 |
+
|
| 1585 |
+
if self.config.use_weighted_layer_sum:
|
| 1586 |
+
hidden_states = outputs[_HIDDEN_STATES_START_POSITION]
|
| 1587 |
+
hidden_states = torch.stack(hidden_states, dim=1)
|
| 1588 |
+
norm_weights = nn.functional.softmax(self.layer_weights, dim=-1)
|
| 1589 |
+
hidden_states = (hidden_states * norm_weights.view(-1, 1, 1)).sum(dim=1)
|
| 1590 |
+
else:
|
| 1591 |
+
hidden_states = outputs[0]
|
| 1592 |
+
|
| 1593 |
+
hidden_states = self.projector(hidden_states)
|
| 1594 |
+
if attention_mask is None:
|
| 1595 |
+
pooled_output = hidden_states.mean(dim=1)
|
| 1596 |
+
else:
|
| 1597 |
+
padding_mask = self._get_feature_vector_attention_mask(hidden_states.shape[1], attention_mask)
|
| 1598 |
+
expand_padding_mask = padding_mask.unsqueeze(-1).repeat(1, 1, hidden_states.shape[2])
|
| 1599 |
+
hidden_states[~expand_padding_mask] = 0.0
|
| 1600 |
+
pooled_output = hidden_states.sum(dim=1) / padding_mask.sum(dim=1).view(-1, 1)
|
| 1601 |
+
|
| 1602 |
+
logits = self.classifier(pooled_output)
|
| 1603 |
+
|
| 1604 |
+
loss = None
|
| 1605 |
+
if labels is not None:
|
| 1606 |
+
loss_fct = CrossEntropyLoss()
|
| 1607 |
+
loss = loss_fct(logits.view(-1, self.config.num_labels), labels.view(-1))
|
| 1608 |
+
|
| 1609 |
+
if not return_dict:
|
| 1610 |
+
output = (logits,) + outputs[_HIDDEN_STATES_START_POSITION:]
|
| 1611 |
+
return ((loss,) + output) if loss is not None else output
|
| 1612 |
+
|
| 1613 |
+
return SequenceClassifierOutput(
|
| 1614 |
+
loss=loss,
|
| 1615 |
+
logits=logits,
|
| 1616 |
+
hidden_states=outputs.hidden_states,
|
| 1617 |
+
attentions=outputs.attentions,
|
| 1618 |
+
)
|
| 1619 |
+
|
| 1620 |
+
|
| 1621 |
+
__all__ = ["SEWDForCTC", "SEWDForSequenceClassification", "SEWDModel", "SEWDPreTrainedModel"]
|
LTA_openwebtext_dualt/mini_owt_logdirichlet/.venv_qwen35_uv/lib/python3.12/site-packages/transformers/models/vision_text_dual_encoder/__init__.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Copyright 2024 The HuggingFace Team. All rights reserved.
|
| 2 |
+
#
|
| 3 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
| 4 |
+
# you may not use this file except in compliance with the License.
|
| 5 |
+
# You may obtain a copy of the License at
|
| 6 |
+
#
|
| 7 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
| 8 |
+
#
|
| 9 |
+
# Unless required by applicable law or agreed to in writing, software
|
| 10 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
| 11 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 12 |
+
# See the License for the specific language governing permissions and
|
| 13 |
+
# limitations under the License.
|
| 14 |
+
from typing import TYPE_CHECKING
|
| 15 |
+
|
| 16 |
+
from ...utils import _LazyModule
|
| 17 |
+
from ...utils.import_utils import define_import_structure
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
if TYPE_CHECKING:
|
| 21 |
+
from .configuration_vision_text_dual_encoder import *
|
| 22 |
+
from .modeling_vision_text_dual_encoder import *
|
| 23 |
+
from .processing_vision_text_dual_encoder import *
|
| 24 |
+
else:
|
| 25 |
+
import sys
|
| 26 |
+
|
| 27 |
+
_file = globals()["__file__"]
|
| 28 |
+
sys.modules[__name__] = _LazyModule(__name__, _file, define_import_structure(_file), module_spec=__spec__)
|