Lección 16: Arpegios, teoría acorde–escala e improvisación
Secciones
Ajustes de lectura
Ninguna voz para este idioma en este navegador.
Más voces
Código y términos técnicos en inglés
Desactivado: la voz de la página lo lee todo, sin pausa entre dos voces.
Ninguna voz para este idioma en este navegador.
Más voces
Más voces: Microsoft Edge ofrece voces naturales en línea, y Windows (Configuración › Hora e idioma › Voz), macOS y Android instalan otras.
La lección 6 apilaba terceras dentro de una escala para sacar sus acordes, y la lección 11 tocaba una escala desde cada uno de sus grados para sacar sus modos. El improvisador usa las dos cosas a la vez: sobre cada acorde, las notas del acorde tocadas una a una, y una escala que llena los huecos entre ellas. Guitar Alchemist (GA) responde a la pregunta del guitarrista, «¿qué toco sobre este acorde?», en tres sitios: una herramienta de su servidor MCP, ga_arpeggio_suggestions, y dos habilidades de su chatbot, ImprovisationSkill, que da a cada acorde un arpegio y escalas, y OutsideNotesSkill, que dice si una nota es nota del acorde, tensión o nota a evitar. El programa del curso compila las dos habilidades tal cual, lee la herramienta como texto y la aplica, y compara las tres con las definiciones publicadas.
Todos los enlaces a GA apuntan al commit a826864. Las habilidades toman un logger y un extractor de consultas por LLM de código que el curso no compila; StandIns.cs los sustituye, y ninguna petición de abajo llega al extractor. No se llamó a ninguna herramienta MCP ni a ningún chatbot. Las salidas vienen del comando de abajo; el punto de entrada es l18.
dotnet run --project code/music-theory-ga/GaTheory -c Release -- l18Los arpegios
Sección titulada «Los arpegios»La idea
Sección titulada «La idea»Wikipedia: “An arpeggio … is a type of chord in which the notes that compose a chord are individually sounded in a progressive rising or descending order”, y “An arpeggio for the chord of C major going up two octaves would be the notes (C, E, G, C, E, G, C)” (Arpeggio). En el jazz, “Saxophone player Charlie Parker began soloing using the scales and arpeggios associated with the chords in the chord progression” (Jazz improvisation). El arpegio de un acorde de séptima son sus cuatro notas. Apilar terceras dentro de la escala, como en la lección 6, da el acorde de séptima de cada grado: en C mayor, Cmaj7, Dm7, Em7, Fmaj7, G7, Am7 y Bm7♭5; en A menor, los mismos siete acordes a partir de Am7.
En GA: dos tablas y una habilidad
Sección titulada «En GA: dos tablas y una habilidad»ga_arpeggio_suggestions guarda dos tablas, una fila por grado de una tonalidad mayor o menor: el sufijo del arpegio, el modo y los intervalos del modo (GuitaristProblemTools.cs#L385-L406). ImprovisationSkill.ArpeggioFor nombra el arpegio a partir de una fundamental y una calidad (ImprovisationSkill.cs#L263-L284). El programa comprueba las dos contra los acordes del curso (Lesson18.cs#L270-L282):
== The seventh chord on each degree, thirds stacked within C major and within A minor, against the arpeggio suffix of ga_arpeggio_suggestions's two tables (GuitaristProblemTools.cs, read as text) and ImprovisationSkill.ArpeggioFor (GA.Business.ML, compiled) for the course's symboldegree notes course tool check ImprovisationSkill checkI C E G B Cmaj7 maj7 ok Cmaj7 okii D F A C Dm7 m7 ok Dm7 okiii E G B D Em7 m7 ok Em7 okIV F A C E Fmaj7 maj7 ok Fmaj7 okV G B D F G7 7 ok G7 okvi A C E G Am7 m7 ok Am7 okvii° B D F A Bm7b5 m7b5 ok Bm7b5 okdegree notes course tool check ImprovisationSkill checki A C E G Am7 m7 ok Am7 okii° B D F A Bm7b5 m7b5 ok Bm7b5 okIII C E G B Cmaj7 maj7 ok Cmaj7 okiv D F A C Dm7 m7 ok Dm7 okv E G B D Em7 m7 ok Em7 okVI F A C E Fmaj7 maj7 ok Fmaj7 okVII G B D F G7 7 ok G7 okLos catorce sufijos coinciden, y ArpeggioFor devuelve a cada acorde su propio símbolo.
La escala de cada acorde
Sección titulada «La escala de cada acorde»La idea
Sección titulada «La idea»“The chord-scale system is a method of matching, from a list of possible chords, a list of possible scales.” Wikipedia lo contrapone a tocar una sola escala sobre toda una progresión, “the blues scale on A for all chords of the blues progression: A7 E7 D7”: “in the chord-scale system, a different scale is used for each chord in the progression (for example mixolydian scales on A, E, and D for chords A7, E7, and D7, respectively)”. Los profesores no coinciden sobre el acorde mayor: “Russell associated the C major chord with the lydian scale, while teachers including John Mehegan, David Baker, and Mark Levine teach the major scale as the best match for a C major chord” (Chord-scale system). Otro artículo da parejas: “C7 → C mixolydian”, “C-7 → C dorian”, “Cmaj7♯11 → C Lydian mode”, “C- → C Aeolian mode (natural minor)” (Jazz improvisation). Y da el criterio que el curso aplica en todo momento: “the scale contains the chord tones G–B–D♭–F and is said to be compatible with it” (Jazz scale). Una escala sirve para un acorde cuando contiene todas sus notas.
Dentro de una tonalidad, la escala de cada grado es el modo de ese grado, como mostró la lección 11: jónico sobre I, dórico sobre ii, y así hasta el locrio sobre vii°.
En GA: las tablas de la herramienta, y los modos de GA
Sección titulada «En GA: las tablas de la herramienta, y los modos de GA»El programa compara las columnas Mode y Notes de las dos tablas con el modo de cada grado, y las escalas que nombran la herramienta y las habilidades con los modos de GA (Lesson18.cs#L284-L315):
== The mode on each degree of C major: its intervals from the course's steps, against the Mode and Notes columns of the tool's major table, and against GA's MajorScaleModedegree course tool intervals (course) tool's Notes MajorScaleMode nameI Ionian Ionian (major) R, M2, M3, P4, P5, M6, M7 ok ok okii Dorian Dorian R, M2, m3, P4, P5, M6, m7 ok ok okiii Phrygian Phrygian R, m2, m3, P4, P5, m6, m7 ok ok okIV Lydian Lydian R, M2, M3, A4, P5, M6, M7 ok ok okV Mixolydian Mixolydian R, M2, M3, P4, P5, M6, m7 ok ok okvi Aeolian Aeolian (minor) R, M2, m3, P4, P5, m6, m7 ok ok okvii° Locrian Locrian R, m2, m3, P4, d5, m6, m7 ok ok ok
== The tool's minor table, row by row: the mode on that degree of A minor (the course rotates the steps of natural minor), against the row's Mode and Notesi Aeolian Aeolian (minor) ok okii° Locrian Locrian ok okIII Ionian Ionian (major) ok okiv Dorian Dorian ok okv Phrygian Phrygian ok okVI Lydian Lydian ok okVII Mixolydian Mixolydian ok ok
== The textbook scales the tool and the skills name, against GA's mode with that place in its classname course GA's mode checkMelodic Minor 0 2 3 5 7 9 11 Melodic Minor okLydian Augmented 0 2 4 6 8 9 11 Lydian Augmented okLydian Dominant 0 2 4 6 7 9 10 Lydian Dominant okMixolydian b6 0 2 4 5 7 8 10 Mixolydian b6 okLocrian #2 0 2 3 5 6 8 10 Locrian Natural 2 okAltered (Super Locrian) 0 1 3 4 6 8 10 Altered okPhrygian Dominant 0 1 4 5 7 8 10 Phrygian Dominant okHalf-Whole Diminished 0 1 3 4 6 7 9 10 Half-whole diminished DIFFWhole-Half Diminished 0 2 3 5 6 8 9 11 Whole-half diminished DIFFWhole Tone 0 2 4 6 8 10 Whole-tone okMajor Pentatonic 0 2 4 7 9 Major pentatonic okMinor Pentatonic 0 3 5 7 10 Minor pentatonic okLas dos tablas de la herramienta están bien, y MajorScaleMode de GA también. De las otras doce escalas, diez coinciden con el modo de GA en el mismo lugar de su clase. Las dos filas DIFF son los modos disminuidos de GA, como en la lección 12: el primero, que GA llama “Half-whole diminished”, empieza por un tono, y el segundo al revés. La corrección que el curso propuso a GA está en el diario.
Lo que devuelve ga_arpeggio_suggestions
Sección titulada «Lo que devuelve ga_arpeggio_suggestions»La descripción de la herramienta dice: “For each chord in a progression, suggest the matching arpeggio and mode to improvise over it. … Example: [“Am”,“F”,“C”,“G”] in C major → Am: Aeolian/Am7, F: Lydian/Fmaj7, C: Ionian/Cmaj7, G: Mixolydian/G7.” (#L409-L412). Cuando la petición nombra su tonalidad, la primera palabra es la tónica y la segunda el modo, y cualquier palabra que no sea «minor» significa mayor (#L426-L431, #L450). La herramienta busca el grado cuya nota es la fundamental del acorde (#L462-L463) y devuelve chord + arpeggioSuffix, el símbolo entero seguido del sufijo de la tabla, con el modo de ese grado (#L477-L485). Una fundamental fuera de la tonalidad recibe una respuesta fija (#L464-L475). La herramienta necesita los paquetes MCP y F# del servidor de GA, así que el programa no la compila: lee del archivo las tablas y las listas de grados, aplica esas líneas (Lesson18.cs#L142-L236), y lista las notas de cada acorde fuera del modo que recibe (#L317-L341):
== What ga_arpeggio_suggestions returns when the request names its key (the course's reading of lines 413 to 495), and the notes of each chord outside the mode it pairs with the chordthe tool's own example: [Am, F, C, G], key "C major" read as "C major" Am vi Amm7 Aeolian (minor) outside the mode: - F IV Fmaj7 Lydian outside the mode: - C I Cmaj7 Ionian (major) outside the mode: - G V G7 Mixolydian outside the mode: -a ii-V-I written with sevenths: [Dm7, G7, Cmaj7], key "C major" read as "C major" Dm7 ii Dm7m7 Dorian outside the mode: - G7 V G77 Mixolydian outside the mode: - Cmaj7 I Cmaj7maj7 Ionian (major) outside the mode: -Wikipedia's chord-scale example: [A7, E7, D7], key "A major" read as "A major" A7 I A7maj7 Ionian (major) outside the mode: G E7 V E77 Mixolydian outside the mode: - D7 IV D7maj7 Lydian outside the mode: Can A major chord in C major: [C, A, Dm, G], key "C major" read as "C major" C I Cmaj7 Ionian (major) outside the mode: - A vi Am7 Aeolian (minor) outside the mode: C♯ Dm ii Dmm7 Dorian outside the mode: - G V G7 Mixolydian outside the mode: -a minor key with its dominant: [Am, Dm, E7, Am], key "A minor" read as "A minor" Am i Amm7 Aeolian (minor) outside the mode: - Dm iv Dmm7 Dorian outside the mode: - E7 v E7m7 Phrygian outside the mode: G♯ Am i Amm7 Aeolian (minor) outside the mode: -the key written "Am": [Am, Dm, E7], key "Am" read as "Am major" Am I Ammaj7 Ionian (major) outside the mode: C Dm IV Dmmaj7 Lydian outside the mode: F E7 V E77 Mixolydian outside the mode: -a chord outside the key: [C, Bb, F], key "C major" read as "C major" C I Cmaj7 Ionian (major) outside the mode: - Bb chromatic Bb (chromatic — outside key) depends on context outside the mode: (no scale) F IV Fmaj7 Lydian outside the mode: -for a chord outside the key the tool returns the arpeggio "<chord> (chromatic — outside key)", the mode "depends on context" and the notes "R, M2, M3, P5"- En su propio ejemplo, la herramienta devuelve «Amm7», donde su descripción dice Am7. Un ii–V–I escrito con séptimas recibe «Dm7m7», «G77» y «Cmaj7maj7».
- El modo sale del grado de la fundamental, no del acorde. El ejemplo de Wikipedia, A7 E7 D7 en A mayor, recibe jónico, mixolidio y lidio: el G de A7 queda fuera de A jónico y el C de D7 fuera de D lidio, donde Wikipedia toca mixolidio sobre los tres. Un acorde de A mayor en C mayor cae en el grado vi: la herramienta responde «Am7» y eólico, cuyo C choca con el C♯ del acorde. E7, la dominante de A menor, recibe «E7m7» y frigio, sin el G♯ del acorde.
- Una tonalidad escrita «Am» se lee «Am major», es decir A mayor: Am recibe «Ammaj7» y jónico, con su C fuera, y Dm recibe «Dmmaj7» y lidio.
El código de GA conocía los dos primeros. Los comentarios de ImprovisationSkill describen el acorde de A mayor en C mayor (ImprovisationSkill.cs#L22-L32), y un comentario sobre ArpeggioFor llama a “root + full-suffix concatenation (“Amm7”)” “the single most-broken behavior of the MCP arpeggio tool” (#L264-L265). GA #626, fusionada el 2026-09-24, después del commit del curso del 2026-09-14, hace que la herramienta nombre el arpegio con InferQuality y ArpeggioFor de la habilidad, y compare la calidad del acorde con la del grado. En main, la tonalidad se sigue leyendo igual. Leído, no ejecutado.
Lo que ofrece ImprovisationSkill
Sección titulada «Lo que ofrece ImprovisationSkill»La habilidad “Suggests scales, modes and arpeggios to improvise / solo over a chord or a whole chord progression” (ImprovisationSkill.cs#L46-L51). InferQuality lee la calidad tras la fundamental, “Most-specific first” (#L309-L353); ScalesFor da a cada calidad una lista de escalas, “best/most-common first” (#L355-L437). El programa pide 31 símbolos sobre C, cada uno con sus notas habituales (Chord notation, Jazz chord), y busca las notas del acorde fuera de la primera escala (Lesson18.cs#L343-L358):
== ImprovisationSkill (GA.Business.ML, compiled): the quality InferQuality reads in each symbol, the arpeggio ArpeggioFor names, the first scale ScalesFor offers and the chord's notes outside it, and the first of its scales that holds them allsymbol notes quality arpeggio first scale outside holds every noteC C E G major triad C Ionian (major) - the firstCm C E♭ G minor triad Cm Aeolian (natural minor) - the firstC6 C E G A major triad C Ionian (major) - the firstC69 C E G A D major triad C Ionian (major) - the firstCadd9 C E G D unknown C Major scale of the chord root - the firstCsus2 C D G unknown C Major scale of the chord root - the firstCsus4 C F G unknown C Major scale of the chord root - the firstC5 C G unknown C Major scale of the chord root - the firstCmaj7 C E G B major 7 Cmaj7 Ionian (major) - the firstCM7 C E G B minor 7 Cm7 Dorian E B noneCmaj9 C E G B D major 7 Cmaj7 Ionian (major) - the firstCmaj7#11 C E G B F♯ major 7#11 Cmaj7#11 Lydian - the firstCmaj7#5 C E G♯ B major 7 Cmaj7 Ionian (major) G♯ noneC7 C E G B♭ dominant 7 C7 Mixolydian - the firstC9 C E G B♭ D dominant 7 C7 Mixolydian - the firstC13 C E G B♭ D A dominant 7 C7 Mixolydian - the firstC7sus4 C F G B♭ suspended dominant C7sus4 Mixolydian - the firstC7#11 C E G B♭ F♯ dominant 7 C7 Mixolydian F♯ Lydian DominantC7b9 C E G B♭ D♭ altered dominant C7alt Altered (Super Locrian) G Half-Whole DiminishedC7#9 C E G B♭ D♯ altered dominant C7alt Altered (Super Locrian) G Half-Whole DiminishedC7b13 C E G B♭ A♭ dominant 7 C7 Mixolydian A♭ Mixolydian b6C7#5 C E G♯ B♭ augmented Caug Whole Tone - the firstC7+5 C E G♯ B♭ dominant 7 C7 Mixolydian G♯ Mixolydian b6Caug C E G♯ augmented Caug Whole Tone - the firstCm7 C E♭ G B♭ minor 7 Cm7 Dorian - the firstCm9 C E♭ G B♭ D minor 7 Cm7 Dorian - the firstCm6 C E♭ G A minor major 7 CmMaj7 Melodic Minor - the firstCmMaj7 C E♭ G B minor major 7 CmMaj7 Melodic Minor - the firstCm7b5 C E♭ G♭ B♭ half-diminished (m7b5) Cm7b5 Locrian - the firstCdim C E♭ G♭ diminished triad Cdim Locrian - the firstCdim7 C E♭ G♭ B♭♭ diminished 7 Cdim7 Whole-Half Diminished - the firstCanHandle on its 17 example prompts: 16 accepted; turned down: "what scales fit over the progression Cmaj7 A7 Dm7 G7"Para 24 de los 31 símbolos, la primera escala contiene todas las notas del acorde. Los siete restantes:
- CM7.
InferQualitypasa el sufijo a minúsculas (#L323), y «m7» es la prueba de la séptima menor (#L347). Así, CM7, que Wikipedia escribe para “a C major seventh chord (CM7)” (Chord notation), recibe el arpegio Cm7 y dórico, y su E y su B quedan fuera de las tres escalas ofrecidas.ChordVocabulary, en GA, describe esta misma regresión: “the skill lowercased the whole quality token before matching, so “CM” resolved to C minor instead of C major (a regression of the PR #80 fix that the MCP tool already carried)“, reunida en “one home for the case-sensitive M/M7 handling” (ChordVocabulary.cs#L8-L16). SuNormalizeQualitylee «M7» como «major 7» (#L59-L65), peroInferQualityno lo llama. - Cmaj7♯5 se lee «major 7», porque la prueba de «maj7» (
#L340) va antes que la de «7#5» (#L343): G♯ queda fuera del jónico y del lidio. - C7♯11, C7♭13 y C7+5 se leen «dominant 7», y al mixolidio le faltan su F♯, su A♭ o su G♯; Lydian Dominant y Mixolydian ♭6, más abajo en la lista, los tienen. Wikipedia empareja “C7♯11 and C lydian dominant”, donde “every note of the scale may be considered a chord tone” (Chord-scale system).
- C7♭9 y C7♯9 se leen «altered dominant», arpegio C7alt, y reciben primero la escala alterada. Esa escala conserva “The tonic, major third (as a diminished fourth), and dominant seventh” y altera las dos quintas (Jazz scale), así que el G del acorde queda fuera; Half-Whole Diminished, la segunda, contiene las cinco notas.
Otras dos lecturas dan la escala correcta con un nombre equivocado. Cm6 se lee «minor major 7» (“mel min territory”, #L346), así que su arpegio es CmMaj7, C E♭ G B, y no C E♭ G A, las notas del acorde; el menor melódico contiene las dos. C6 y C69 se leen «major triad», arpegio C. Cadd9, Csus2, Csus4 y C5 son «unknown» y reciben «Major scale of the chord root».
CanHandle es el filtro por palabras clave de la habilidad, la vía de respaldo detrás del enrutador semántico del chatbot (#L92-L94). Rechaza uno de los 17 ejemplos de petición de la habilidad, “what scales fit over the progression Cmaj7 A7 Dm7 G7” (#L74). Sus palabras clave solo cuentan como palabras enteras (ChordIntentMatching.cs#L22-L35): «what scale» va seguido de una s, y ninguna otra palabra clave está en la frase (ImprovisationSkill.cs#L86-L101).
En una petición que nombra dos símbolos de acorde o más, la habilidad clasifica cada acorde por separado (#L119-L125, #L212-L261); sus comentarios dicen que es a propósito: “The per-chord classification is deliberately key-agnostic” (#L23). El programa llama a ExecuteAsync directamente (Lesson18.cs#L359-L368):
== ImprovisationSkill.ExecuteAsync on requests that name two chords or more: two of its own example prompts, Wikipedia's chord-scale example and GAA-003's Dorian and Mixolydian vamps"which arpeggio fits Am F C G": CanHandle True, chords read Am F C G - **Am** → arpeggio **Am**, play **A Aeolian (natural minor)** (diatonic minor — fits most i chords). - **F** → arpeggio **F**, play **F Ionian (major)** (diatonic, includes the 7 — careful on the IV chord). - **C** → arpeggio **C**, play **C Ionian (major)** (diatonic, includes the 7 — careful on the IV chord). - **G** → arpeggio **G**, play **G Ionian (major)** (diatonic, includes the 7 — careful on the IV chord)."what scales fit over the progression Cmaj7 A7 Dm7 G7": CanHandle False, chords read Cmaj7 A7 Dm7 G7 - **Cmaj7** → arpeggio **Cmaj7**, play **C Ionian (major)** (diatonic — the safe choice). - **A7** → arpeggio **A7**, play **A Mixolydian** (diatonic dominant — natural choice for V chords). - **Dm7** → arpeggio **Dm7**, play **D Dorian** (natural 6 — modern jazz default). - **G7** → arpeggio **G7**, play **G Mixolydian** (diatonic dominant — natural choice for V chords)."how do I improvise over A7 E7 D7": CanHandle True, chords read A7 E7 D7 - **A7** → arpeggio **A7**, play **A Mixolydian** (diatonic dominant — natural choice for V chords). - **E7** → arpeggio **E7**, play **E Mixolydian** (diatonic dominant — natural choice for V chords). - **D7** → arpeggio **D7**, play **D Mixolydian** (diatonic dominant — natural choice for V chords)."improvise over Am7 D7": CanHandle True, chords read Am7 D7 - **Am7** → arpeggio **Am7**, play **A Dorian** (natural 6 — modern jazz default). - **D7** → arpeggio **D7**, play **D Mixolydian** (diatonic dominant — natural choice for V chords)."improvise over A7 G/A": CanHandle True, chords read A7 G A - **A7** → arpeggio **A7**, play **A Mixolydian** (diatonic dominant — natural choice for V chords). - **G** → arpeggio **G**, play **G Ionian (major)** (diatonic, includes the 7 — careful on the IV chord). - **A** → arpeggio **A**, play **A Ionian (major)** (diatonic, includes the 7 — careful on the IV chord).A7 E7 D7 recibe tres veces mixolidio, la respuesta de Wikipedia, y el vamp dórico del módulo Streeling GAA-003, Am7 D7, recibe A dórico y D mixolidio. Sin tonalidad, una tríada mayor recibe siempre el jónico, con “careful on the IV chord” (#L371-L376): sobre Am F C G, el ejemplo de la herramienta, la habilidad ofrece F jónico y G jónico, cuyo B♭ y F♯ no están en ninguno de los cuatro acordes, donde la descripción de la herramienta tiene lidio y mixolidio. El vamp mixolidio de GAA-003, A7 a G/A, una tríada de G sobre un bajo de A, se lee como tres acordes: el tokenizador se detiene en la barra (#L461), y el bajo se vuelve un acorde de A, que recibe A jónico y su G♯, contra el G del vamp.
Las notas fuera del acorde
Sección titulada «Las notas fuera del acorde»La idea
Sección titulada «La idea»Wikipedia: “An F against a C major chord could be considered an avoid note because it lies a semitone above the third, an interval which was historically heard as dissonance. Treating the F as a passing tone is a simpler way to use it in a melody over a C major chord” (Avoid note). Otro artículo la sitúa dentro de la escala: “An avoid note is a note in a jazz scale that is considered, in jazz theory and practice, too dissonant to be emphasised against the underlying chord”, y “Avoid notes are often a minor second (or a minor ninth) above a chord tone or a perfect fourth above the root of the chord”; “Non-classical harmony just tells you which note in the scale to avoid … meaning that all the others are okay” (Jazz scale). La definición acorde–escala clasifica las notas de una escala: una nota fuera de ella no es ni tensión ni nota a evitar de esa escala. Sobre un acorde de dominante, las tensiones alteradas son el objetivo: “The altered extensions played by a jazz guitarist or jazz pianist on an altered dominant chord on G might include (at the discretion of the performer) a flatted ninth A♭ …; a sharp eleventh C♯ … and a flattened thirteenth E♭” (Jazz improvisation).
En GA: una regla para doce notas
Sección titulada «En GA: una regla para doce notas»Los comentarios de OutsideNotesSkill dan su regla: “a non-chord-tone that sits a semitone above a chord tone is an avoid note (it forms a b9 clash with that chord tone); any other non-chord-tone is an available tension” (OutsideNotesSkill.cs#L20-L28). Classify la aplica a cualquier nota, sin escala (#L141-L189). El programa le pide las doce notas sobre cuatro acordes de C, y compara sus tensiones con las escalas que ImprovisationSkill ofrece para los mismos acordes (Lesson18.cs#L370-L388):
== OutsideNotesSkill.Classify (GA.Business.ML, compiled): each of the twelve notes over Cmaj7, C7, Cm7 and Cm7b5note Cmaj7 C7 Cm7 Cm7b5C chord tone: root chord tone: root chord tone: root chord tone: rootD♭ avoid: b9 avoid: b9 avoid: b9 avoid: b9D tension: 9 tension: 9 tension: 9 tension: 9E♭ tension: #9 tension: #9 chord tone: minor third chord tone: minor thirdE chord tone: major third chord tone: major third avoid: major 3rd avoid: major 3rdF avoid: 11 avoid: 11 tension: 11 tension: 11F♯ tension: #11 tension: #11 tension: #11 chord tone: diminished fifthG chord tone: perfect fifth chord tone: perfect fifth chord tone: perfect fifth avoid: 5thA♭ avoid: b13 avoid: b13 avoid: b13 tension: b13A tension: 13 tension: 13 tension: 13 tension: 13B♭ tension: b7 chord tone: minor seventh chord tone: minor seventh chord tone: minor seventhB chord tone: major seventh avoid: major 7th avoid: major 7th avoid: major 7th
== The notes Classify calls a tension that none of the scales ImprovisationSkill offers for the same chord containsCmaj7 scales: Ionian (major), Lydian; tensions: D E♭ F♯ A B♭; in none of them: E♭ (#9), B♭ (b7)C7 scales: Mixolydian, Lydian Dominant, Mixolydian b6; tensions: D E♭ F♯ A; in none of them: E♭ (#9)Cm7 scales: Dorian, Aeolian (minor), Phrygian; tensions: D F F♯ A; in none of them: F♯ (#11)Cm7b5 scales: Locrian, Locrian #2; tensions: D F A♭ A; in none of them: A (13)Sobre Cmaj7, las notas a evitar son D♭, F y A♭; F es la nota a evitar de Wikipedia. Cualquier otra nota es una «tension», esté o no en una escala que sirva para el acorde. Sobre Cmaj7, B♭ es «tension: b7», una séptima menor contra la séptima mayor del acorde, y E♭ «tension: #9», contra su tercera mayor; sobre Cm7, F♯; sobre Cm7♭5, A. Ninguna está en las escalas que ImprovisationSkill ofrece para el mismo acorde. B♭ está un semitono por debajo del B del acorde: la regla solo mira por encima de las notas del acorde. Sobre C7, la regla convierte la ♭9 y la ♭13 en notas a evitar, donde Wikipedia las cuenta entre las extensiones de una dominante alterada. El comentario sobre los acordes de dominante nombra “the b9/#9/#11/b13 half-step clashes” (#L164-L166), pero la ♯9 y la ♯11 no están un semitono por encima de ninguna nota del acorde: salen como tensiones.
Los ejemplos de petición de la habilidad, y luego tres preguntas añadidas después de la primera ejecución (Lesson18.cs#L389-L403):
== OutsideNotesSkill on its own example prompts: CanHandle, then the first line of ExecuteAsync's answer"why does F sound outside over Cmaj7": True; **F** over **C major 7**: an avoid note — the 11 (natural eleventh)."why does that note clash over the chord": True; Tell me a single note and a single chord and I'll say whether it's a chord tone, a tension, or an avoid note — e.g. "why does F sound outside over Cmaj7" or "is A a tension over Cmaj7"."is F an avoid note over Cmaj7": True; **F** over **C major 7**: an avoid note — the 11 (natural eleventh)."what is F over G7": False; **F** over **G dominant 7**: a chord tone — the minor seventh."why does the b9 sound so tense over C7": True; Tell me a single note and a single chord and I'll say whether it's a chord tone, a tension, or an avoid note — e.g. "why does F sound outside over Cmaj7" or "is A a tension over Cmaj7"."is A a chord tone or a tension over Cmaj7": True; **A** over **C major 7**: an available tension — the 13 (thirteenth)."why does Bb sound outside over C major": True; **Bb** over **C**: an available tension — the b7 (minor seventh)."is F# an avoid note or a tension over Cmaj7": True; **F#** over **C major 7**: an available tension — the #11 (sharp eleventh)."why does F clash over a Cmaj7 chord": True; **F** over **C major 7**: an avoid note — the 11 (natural eleventh)."why does the note clash over this chord": False; Tell me a single note and a single chord and I'll say whether it's a chord tone, a tension, or an avoid note — e.g. "why does F sound outside over Cmaj7" or "is A a tension over Cmaj7".
== Added after the first run: OutsideNotesSkill.ExecuteAsync's whole answer for B over C7, and for E and B over CM7, the symbol ImprovisationSkill reads as minor 7"is B an avoid note over C7": **B** over **C dominant 7**: an avoid note — the major 7th. It's the major 7th, sitting a semitone above the minor seventh of the chord. That half-step rub is why it sounds outside — but over a dominant chord it's exactly the kind of altered tension players reach for (major 7th on the V), so it's usable if you resolve it, not a note to simply avoid."is E a chord tone over CM7": **E** over **C major 7**: a chord tone — the major third. It's part of the chord itself (the major third), so it sounds fully consonant — as inside as a note can be over this chord."is B a chord tone over CM7": **B** over **C major 7**: a chord tone — the major seventh. It's part of the chord itself (the major seventh), so it sounds fully consonant — as inside as a note can be over this chord.Siete de los diez ejemplos de petición obtienen respuesta. “what is F over G7” obtiene una cuando se la llama directamente, pero CanHandle la rechaza: ninguna de las palabras clave de la habilidad está en la frase (#L67-L72). “why does that note clash over the chord” pasa CanHandle, porque el patrón de acorde ignora mayúsculas y minúsculas (#L291-L293) y lee «the chord» como un acorde de C, y luego no encuentra ninguna nota antes de «over». “why does the b9 sound so tense over C7” pasa y recibe el mismo texto de ayuda: la habilidad lee nombres de notas, no grados, como dicen sus comentarios (#L31-L33). «Bb over C major» se mide contra una tríada de C mayor.
De las tres preguntas añadidas después de la primera ejecución, la primera muestra lo que un usuario lee sobre la séptima mayor encima de un acorde de dominante: una nota a evitar, y luego “over a dominant chord it’s exactly the kind of altered tension players reach for (major 7th on the V)” (#L164-L172). La séptima mayor no es ninguna de las tensiones alteradas, y choca con la propia séptima del acorde. Las otras dos muestran que OutsideNotesSkill, que lee el acorde a través de ChordVocabulary, toma CM7 por una séptima mayor: dos habilidades del mismo chatbot no coinciden sobre ese símbolo.
GAA-003 y las entradas de GA sobre improvisación
Sección titulada «GAA-003 y las entradas de GA sobre improvisación»El módulo Streeling GAA-003 · Fundamentos de la improvisación parte de la caja 1 de la pentatónica menor de A, “The five notes are: A, C, D, E, G” (gaa-003-improvisation-foundations.md#L40-L51). Su primera respuesta de autoevaluación explica por qué esa escala es segura sobre Am7 y menos sobre A7: “Over Am or Am7 none of its notes lies a half step from a chord tone, so no order or combination makes a half-step clash with the chord. Over a dominant chord such as A7 that no longer holds: C lies a half step below the chord’s C#, and D a half step above it” (#L467). Sobre un blues en A, apunta a la tercera de cada acorde: “For A7, target the 3rd (C#). For D7, target the 3rd (F#). For E7, target the 3rd (G#)” (#L175). Deletrea tres modos sobre A (#L267, #L273, #L279) y nombra la nota que aleja a cada uno, añadiendo: “They are not “avoid notes” in the chord-scale sense of mus-005, which are notes inside the scale that clash with the chord” (#L283-L289). El programa comprueba esas afirmaciones con Classify (Lesson18.cs#L404-L419):
== GAA-003's claims, through Classify: the notes of A minor pentatonic over Am7 and over A7, and the notes the module says pull each mode awayA over Am7: chord tone, root over A7: chord tone, rootC over Am7: chord tone, minor third over A7: tension, #9D over Am7: tension, 11 over A7: avoid, 11E over Am7: chord tone, perfect fifth over A7: chord tone, perfect fifthG over Am7: chord tone, minor seventh over A7: chord tone, minor seventhDorian F over Am7 avoid, b13Mixolydian G♯ over A7 avoid, major 7thLydian D over Amaj7 avoid, 11GAA-003's targets, the third of each dominant chord of a blues in A, from ChordVocabulary.GetFormula("dominant 7"): A7 C♯, D7 F♯, E7 G♯Sobre Am7, Classify está de acuerdo con el módulo: A, C, E y G son notas del acorde, y D una tensión. Sobre A7 solo ve la mitad del roce: D, un semitono por encima de C♯, es una nota a evitar, pero C, un semitono por debajo, es una tensión, la ♯9. Las tres notas que alejan un modo salen todas como notas a evitar, la etiqueta que GAA-003 dice que no tienen. Los tres objetivos son las terceras de la fórmula de dominante de GA (ChordVocabulary.cs#L121).
La configuración de GA tiene un archivo para la improvisación, ImprovisationConcepts.yaml, con cuatro conceptos, cada uno un nombre y una línea Concept (ImprovisationConcepts.yaml#L6-L14). YamlKnowledgeLoader convierte cada uno en una entrada para la búsqueda: el nombre, y luego cada otro campo en la forma «Key: Value», etiquetado con el nombre del archivo y la Category, si la hay (YamlKnowledgeLoader.fs#L65-L91). El programa las carga, luego toca la caja 1 de GAA-003 y deletrea sus tres modos (Lesson18.cs#L421-L448):
== YamlKnowledgeLoader.LoadAllKnowledgeEntries (GA.Business.Config): 192 entries from 15 files; the 4 of ImprovisationConcepts.yamlMotivic Development category "", tags ImprovisationConcepts; content: Motivic Development | Concept: Repeat and vary small melodic ideasTension and Release category "", tags ImprovisationConcepts; content: Tension and Release | Concept: Alternate dissonance and resolutionRhythmic Displacement category "", tags ImprovisationConcepts; content: Rhythmic Displacement | Concept: Shift motifs across beatsSpace Usage category "", tags ImprovisationConcepts; content: Space Usage | Concept: Use silence as phrasing element
== GAA-003's box 1 of A minor pentatonic, read on the strings in standard tuning, against GA's fifth mode of the major pentatonicE: frets 5, 8 -> A2 C3A: frets 5, 7 -> D3 E3D: frets 5, 7 -> G3 A3G: frets 5, 7 -> C4 D4B: frets 5, 8 -> E4 G4e: frets 5, 8 -> A4 C5notes of the box: C D E G A; GA's Minor pentatonic: A C D E G; the same notes True
== GAA-003's three modes on A, as the module spells them, against the course's spelling from the stepsmode course GAA-003 checkDorian A B C D E F♯ G A B C D E F♯ G okMixolydian A B C♯ D E F♯ G A B C♯ D E F♯ G okLydian A B C♯ D♯ E F♯ G♯ A B C♯ D♯ E F♯ G♯ okLas cuatro entradas son cada una un nombre y una línea, y ninguna empareja un acorde con una escala o un arpegio. La caja 1 toca A, C, D, E y G, el quinto modo de la pentatónica mayor de GA, y el módulo deletrea bien sus tres modos. El cargador se salta SpecializedTunings.yaml, como encontró el diario; lo dice en el flujo de errores, que la salida de arriba deja fuera.
Ejercicios
Sección titulada «Ejercicios»- En
a826864, ¿qué devuelvega_arpeggio_suggestionspara G7 en C mayor, y por qué? - Sobre un acorde de A mayor en C mayor, la herramienta ofrece el eólico. ¿Qué nota choca, y con qué nota del acorde?
- ¿Por qué
ImprovisationSkilllee CM7 como una séptima menor, mientras queOutsideNotesSkillla lee como una séptima mayor? Classifyllama tensión a B♭ sobre Cmaj7. ¿Por qué su regla no ve el choque, y qué diría la definición acorde–escala?- ¿Qué notas de la pentatónica menor de A están a un semitono de una nota de A7, y cómo las llama
Classify?
Soluciones
- «G77» y mixolidio. G es el grado V de C mayor, y la herramienta añade el sufijo de esa fila, «7», al símbolo entero.
- El eólico sobre A tiene C, un semitono por debajo del C♯ del acorde. La herramienta busca el grado a partir de la fundamental sola, A, que es el grado vi de C mayor.
InferQualitypasa el sufijo a minúsculas, así que «M7» se vuelve «m7», la prueba de la séptima menor.OutsideNotesSkillpasa porChordVocabulary.NormalizeQuality, que lee «M7» como séptima mayor antes de pasar nada a minúsculas.- La regla solo mira un semitono por encima de las notas del acorde, y B♭ está un semitono por debajo de B, la séptima del acorde. B♭ no está en ninguna de las escalas ofrecidas para Cmaj7, jónico y lidio: en el sentido acorde–escala no es ni tensión ni nota a evitar de ninguna de las dos, es una nota fuera de la escala.
- C, un semitono por debajo de C♯, y D, un semitono por encima.
Classifyllama a D nota a evitar (la 11) y a C tensión (la ♯9).
Puntos clave
Sección titulada «Puntos clave»- Apilar terceras dentro de una escala da el arpegio de cada grado. Las dos tablas de GA y
ArpeggioFornombran bien los catorce, y los modos de la herramienta son los de los grados. - En
a826864,ga_arpeggio_suggestionsañade su sufijo al símbolo entero («Amm7», «G77») y toma el modo del grado de la fundamental, de modo que A7 en A mayor recibe el jónico. GA #626 corrigió las dos cosas el 2026-09-24; una tonalidad escrita «Am» sigue significando A mayor. ImprovisationSkilllee cada acorde por separado, y para 24 de 31 símbolos su primera escala contiene el acorde. Lee CM7 como una séptima menor, la regresión queChordVocabularydice haber eliminado, Cmaj7♯5 como una séptima mayor, y llama CmMaj7 al arpegio de Cm6.OutsideNotesSkillclasifica las doce notas con una sola regla, un semitono por encima de una nota del acorde; el manual clasifica las notas de una escala. Llama tensión a B♭ sobre Cmaj7 y notas a evitar a la ♭9 y la ♭13 sobre C7, y le dice al usuario que la séptima mayor sobre una dominante es una tensión alterada.- Las entradas de GA sobre improvisación son cuatro conceptos de una línea. La caja 1, los modos y los objetivos de GAA-003 están bien.
Fuentes
Sección titulada «Fuentes»- Wikipedia: Arpeggio, Chord-scale system (una escala por acorde, A7 E7 D7, C7♯11 y el lidio dominante), Jazz improvisation (los arpegios, las parejas de acordes y modos, las extensiones alteradas), Jazz scale (la compatibilidad, las notas a evitar, la escala alterada), Avoid note, Chord notation y Jazz chord (los símbolos de acorde).
- Streeling: GAA-003 · Fundamentos de la improvisación.
- GuitarAlchemist/ga en
a826864:GaMcpServer/Tools/GuitaristProblemTools.cs,Common/GA.Business.ML/Agents/Skills/ImprovisationSkill.cs,OutsideNotesSkill.cs,ChordIntentMatching.cs,Common/GA.Business.ML/Agents/ChordVocabulary.cs,Common/GA.Business.Config/ImprovisationConcepts.yaml,YamlKnowledgeLoader.fs; y GA #626.