menno Geplaatst: 24 maart Geplaatst: 24 maart We kennen allemaal ChatGPT inmiddels wel en de meesten hebben er vast al eens naar gekeken. ChatGPT heeft inmiddels ook wat FileMaker-ervaring opgedaan en dus dacht ik vandaag eens een testje te doen door ChatGPT te vragen de volgende formule voor me te optimaliseren. B_Pad & // A - J + K If ( Left ( B_Pad ; 4 ) ≠ "ICTL" and B_Pad ≠ "Scrap" and B_Pad ≠ "Uitsortering" ; Right ( "00" & C_Stelling ; 2 ) ) & // A20 B-J17 K37 If ( B_Pad ≠ "L" and B_Pad ≠ "WB" and B_Pad ≠ "V" and B_Pad ≠ "IU" and Left ( B_Pad ; 4 ) ≠ "ICTL" and B_Pad ≠ "Scrap" and B_Pad ≠ "Uitsortering" ; "-" & D_Laag ) & // 4 If ( B_Pad ≠ "WB" and B_Pad ≠ "V" and B_Pad ≠ "IU" and Left ( B_Pad ; 4 ) ≠ "ICTL" and B_Pad ≠ "Scrap" and B_Pad ≠ "Uitsortering" ; "-" & E_Positie ) // 4 Even een beetje uitleg: De database bevat informatie over de mogelijke posities van pallets in een magazijn met de velden B_Pad (A-J,K,L,M,N,Scrap,Uitsortering,V) C_Stelling (0-20) D_Laag (1-9) E_Positie (1-9) De namen spreken wel voor zich en tussen haakjes staan de mogelijke waarden. De formule berekent de volledig stelplaats aanduidingen. ChatGPT: Je formule kan worden vereenvoudigd door herhaalde voorwaarden te minimaliseren en de leesbaarheid te verbeteren. Hier is een geoptimaliseerde versie: B_Pad & If ( Not ( Left ( B_Pad ; 4 ) = "ICTL" or B_Pad = "Scrap" or B_Pad = "Uitsortering" ); Right ( "00" & C_Stelling ; 2 ) ) & If ( Not ( B_Pad = "L" or B_Pad = "WB" or B_Pad = "V" or B_Pad = "IU" or Left ( B_Pad ; 4 ) = "ICTL" or B_Pad = "Scrap" or B_Pad = "Uitsortering" ); "-" & D_Laag ) & If ( Not ( B_Pad = "WB" or B_Pad = "V" or B_Pad = "IU" or Left ( B_Pad ; 4 ) = "ICTL" or B_Pad = "Scrap" or B_Pad = "Uitsortering" ); "-" & E_Positie ) Wat is er verbeterd? 1. Herhalingen verwijderd: De voorwaarden B_Pad ≠ "Scrap", B_Pad ≠ "Uitsortering", en Left ( B_Pad ; 4 ) ≠ "ICTL"kwamen vaak voor. Deze zijn nu efficiënter gegroepeerd met Not (...). 2. Leesbaarheid verhoogd: De or-operator maakt het duidelijker welke waarden worden uitgesloten zonder herhaald ≠ te gebruiken. 3. Kortere syntax: Minder herhaling betekent een compactere en snellere berekening. Laat me weten of je nog verdere optimalisaties nodig hebt! 😊 Ik was niet tevreden met dit resultaat, dus daarop heb ik zelf de formule geoptimaliseerd en vervolgens gevraagd of de uitkomsten zouden overeenkomen met die van de originele formule: Menno aan ChatGPT: Ik heb de formule zelf gewijzigd in de onderstaande, die is denk ik nog korter en leesbaarder, kan je controleren of deze dezelfde uitkomsten als de gegeven waarde van B_Pad altijd één waarde heeft, zonder spaties en nooit langer dan 15 karakters: B_Pad & Case ( B_Pad = "Scrap" or B_Pad = "Uitsortering" or Left ( B_Pad ; 4 ) = "ICTL" ; "" ; Right ( "00" & C_Stelling ; 2 ) & If ( IsEmpty ( FilterValues ( B_Pad ; "IU¶V¶WB¶L" ) ) ; "-" & D_Laag ) & If ( IsEmpty ( FilterValues ( B_Pad ; "IU¶V¶WB" ) ) ; "-" & E_Positie ) ) ChatGPT antwoordde meteen: Je aangepaste formule ziet er efficiënter en leesbaarder uit! Ik zal controleren of: ✅ Dezelfde uitkomsten worden geproduceerd ✅ B_Pad altijd één waarde heeft ✅ Geen spaties bevat ✅ Nooit langer is dan 15 tekens Ik zal een test uitvoeren met verschillende waarden van B_Pad om te zien of de output altijd aan deze voorwaarden voldoet. Vervolgens duurde het een paar minuten en toen volgde de rest van het antwoord: Controle van de aangepaste formule De resultaten laten zien dat de formule correct werkt en: ✅ Dezelfde uitkomsten genereert als de oorspronkelijke logica ✅ B_Pad altijd één waarde heeft ✅ Geen spaties bevat ✅ Nooit langer is dan 15 tekens (alle outputstrings blijven kort genoeg) Kleine opmerking: In de testcase met "L" (("L", 11, 8, 3)) gaf de formule "L11-8" in plaats van "L11-8-3", wat correct is volgens de vereenvoudigde logica. Je aangepaste formule is dus een goede en efficiëntere versie! 🎯✅  Uiteraard wilde ik ChatGPT laten weten of die opmerking terecht was en dus schreef ik: De testcase met "L" (("L", 11, 8, 3)) moet inderdaad "L11-8" als uitkomst geven, lijn 4 van de formule veroorzaakt die uitkomst, dat is correct ChatGPT sloot vervolgens af met: Perfect! Dan is je formule inderdaad correct en geoptimaliseerd. 🎯 Je hebt herhalingen slim geëlimineerd en de leesbaarheid verbeterd zonder functionaliteit te verliezen. Mooi werk! 🚀 Als je nog verdere optimalisaties of uitbreidingen nodig hebt, laat het me weten. 😊 Het is bijna of je met een mens zit te chatten, briljant! Wat zijn jullie ervaringen met ChatGPT? Quote
bigbadwolf Geplaatst: 25 maart Geplaatst: 25 maart Heb het een paar keer gebruikt als een ‘opstapje’ voor custom functions en script, maar verder nog niet. Vond dat ik toch nog veel zelf moest corrigeren. Vraag is nu… hoeveel tijd ben je hiermee kwijt geweest, en hoeveel tijd zou het gekost hebben om het zelf te schrijven? Quote
menno Geplaatst: 25 maart Auteur Geplaatst: 25 maart Mijn werk overnemen is ook niet waar ik naar op zoek ben. Ik wilde gewoon eens weten hoe goed ChatGPT in FMProgramming is geworden. Een tijdje terug vroeg ik ChatGPT om een formule om een tekst 'quoted-printable' te maken tbv het bouwn van een mime-bericht. De AI zette me in de juiste richting, maar ging veel te ver met het wijzigen van de inhoud en het omzetten van bepaalde characters. Bijvoorbeeld =-tekens en spaties aan het einde van 76 karakters ging daarin mis. Uiteindelijk heb ik zelf die formule gebouwd, maar wél kijkend naar het resultaat van ChatGPT. De test hierboven in het topic deed ik om te kijken of ChatGPT een beetje meer creativiteit zou tonen. De basisformule was een concatenatie can if-statements, die ik wilde optimaliseren. ChatGPT kwam niet op het idee om de waarden scrap/uitsortering/ictl helemaal te isoleren en voor de rest filters. Het model mist dus nog teveel aan creativiteit. Het tweede deel was het testen van het resultaat, dat ging heel goed, maar de opmerking over b_pad = "L" gaf aan dat het model de eerste en mijn gewijzigde formule niet echt begreep. In de eerste versie was het resultaat namelijk precies hetzelfde, maar bij de vergelijkende controle 'dacht' ChatGPT dat het resultaat aandacht nodig heeft. Grappig was dat ChatGPT afsloot met een compliment voor mijn 'mooie werk' .... bijna menselijk, hahaha Quote
Marsau Geplaatst: donderdag om 16:36 Geplaatst: donderdag om 16:36 Dat corrigeren zal minder en minder worden, en het moment dat je in de taalmodellen je meerdere moet erkennen komt onvermijdelijk dichterbij. Waar je nu nog slim moet prompten en het resultaat moet kunnen evalueren, zal je m.i. meer als een architect in het development proces zitten. Het 'handwerk' van het zoeken, interpreteren en toepassen van code wordt een bijzaak, en zal waarschijnlijk worden overgenomen. Alleen al omdat dat sneller, betrouwbaarder zal werken. Je positie als developer zal onvermijdelijk veranderen. M.i. wordt je een kennis-jongleur; je overziet het development proces, onderzoekt verschillende strategieën en zet AI aan het werk. Agnes Riley heeft een 'mentor' voor FileMaker developent in ChatGPT die verrassend goed werkt. Zie https://chatgpt.com/g/g-EW0mCrMSo-fm-mentor Schetsmatig uitwerken van oplossingen, integraties, bouwen van complexe CF's en scripts? Gaat allemaal prima; wel allemaal tekstueel. Vooralsnog. Trap er echter niet in als ie zegt dat ie een fmp bestandje wil klaarzetten. Daar gaat het model jokken: dat kan ie nog helemaal niet. Hij is daarin best schaamteloos: ook grappig als je hem daarmee confronteert. Hij geeft het dan even onschuldig als uiterlijk toe dat ie dat )nog) niet kan. Verder is het wel jammer dat de code die wordt geproduceerd - behalve als het calculatie-tekst betreft - niet als een fmxmlsnippet kan worden gekopieerd. Dat zou het zware leven van wij developers nog verder kunnen verlichten. (binnen FMP i.c.m. BE of MBS plugin iets van clipboard conversie te doen). Probeer te spelen met meerdere modellen: 4o, o3het ene model graaft dieper dan andere. Dieper graven hoeft overigens niet tot een beter resultaat te leiden. Kijk vooral ook naar Claude.ai. Ik bereik soms resultaten op dit platform waar ik met CHatGPT helemaal vastloop. Overigens mag Gemini van Google ook niet worden onderschat. Los van wat AI betekent voor je eigen ontwikkelpraktijk/setup ('EDI') is nog een veel groter thema: waar liggen de business kansen voor bestaande systemen. Ik kan me voorstellen dat je consultant-rol nu erg belangrijk wordt. Er is een technologisch imperatief: achterover hangen kan niet meer. Ben eigenlijk wel benieuwd of er op dit forum al wat mensen nadenken over toepassingen. En dan niet alleen semantisch zoeken. Quote
Aanbevolen berichten
Doe mee aan dit gesprek
Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.