// // Button groups // -------------------------------------------------- // Make the div behave like a button .btn-group, .btn-group-vertical { position: relative; display: inline-block; vertical-align: middle; // match .btn alignment given font-size hack above > .btn { position: relative; float: left; // Bring the "active" button to the front &:hover, &:focus, &:active, &.active { z-index: 2; } &:focus { // Remove focus outline when dropdown JS adds it after closing the menu outline: 0; } } } // Prevent double borders when buttons are next to each other .btn-group { .btn + .btn, .btn + .btn-group, .btn-group + .btn, .btn-group + .btn-group { margin-left: -1px; } } // Optional: Group multiple button groups together for a toolbar .btn-toolbar { margin-left: -5px; // Offset the first child's margin &:extend(.clearfix all); .btn-group, .input-group { float: left; } > .btn, > .btn-group, > .input-group { margin-left: 5px; } } .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { border-radius: 0; } // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match .btn-group > .btn:first-child { margin-left: 0; &:not(:last-child):not(.dropdown-toggle) { .border-right-radius(0); } } // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it .btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { .border-left-radius(0); } // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) .btn-group > .btn-group { float: left; } .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group > .btn-group:first-child { > .btn:last-child, > .dropdown-toggle { .border-right-radius(0); } } .btn-group > .btn-group:last-child > .btn:first-child { .border-left-radius(0); } // On active and open, don't show outline .btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0; } // Sizing // // Remix the default button sizing classes into new ones for easier manipulation. .btn-group-xs > .btn { &:extend(.btn-xs); } .btn-group-sm > .btn { &:extend(.btn-sm); } .btn-group-lg > .btn { &:extend(.btn-lg); } // Split button dropdowns // ---------------------- // Give the line between buttons some depth .btn-group > .btn + .dropdown-toggle { padding-left: 8px; padding-right: 8px; } .btn-group > .btn-lg + .dropdown-toggle { padding-left: 12px; padding-right: 12px; } // The clickable button for toggling the menu // Remove the gradient and set the same inset shadow as the :active state .btn-group.open .dropdown-toggle { .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); // Show no shadow for `.btn-link` since it has no other button styles. &.btn-link { .box-shadow(none); } } // Reposition the caret .btn .caret { margin-left: 0; } // Carets in other button sizes .btn-lg .caret { border-width: @caret-width-large @caret-width-large 0; border-bottom-width: 0; } // Upside down carets for .dropup .dropup .btn-lg .caret { border-width: 0 @caret-width-large @caret-width-large; } // Vertical button groups // ---------------------- .btn-group-vertical { > .btn, > .btn-group, > .btn-group > .btn { display: block; float: none; width: 100%; max-width: 100%; } // Clear floats so dropdown menus can be properly placed > .btn-group { &:extend(.clearfix all); > .btn { float: none; } } > .btn + .btn, > .btn + .btn-group, > .btn-group + .btn, > .btn-group + .btn-group { margin-top: -1px; margin-left: 0; } } .btn-group-vertical > .btn { &:not(:first-child):not(:last-child) { border-radius: 0; } &:first-child:not(:last-child) { border-top-right-radius: @border-radius-base; .border-bottom-radius(0); } &:last-child:not(:first-child) { border-bottom-left-radius: @border-radius-base; .border-top-radius(0); } } .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group-vertical > .btn-group:first-child:not(:last-child) { > .btn:last-child, > .dropdown-toggle { .border-bottom-radius(0); } } .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { .border-top-radius(0); } // Justified button groups // ---------------------- .btn-group-justified { display: table; width: 100%; table-layout: fixed; border-collapse: separate; > .btn, > .btn-group { float: none; display: table-cell; width: 1%; } > .btn-group .btn { width: 100%; } > .btn-group .dropdown-menu { left: auto; } } // Checkbox and radio options // // In order to support the browser's form validation feedback, powered by the // `required` attribute, we have to "hide" the inputs via `opacity`. We cannot // use `display: none;` or `visibility: hidden;` as that also hides the popover. // This way, we ensure a DOM element is visible to position the popover from. // // See https://github.com/twbs/bootstrap/pull/12794 for more. [data-toggle="buttons"] > .btn > input[type="radio"], [data-toggle="buttons"] > .btn > input[type="checkbox"] { position: absolute; z-index: -1; .opacity(0); } .elementor-animation-grow-rotate { transition-duration: 0.3s; transition-property: transform; } .elementor-animation-grow-rotate:active, .elementor-animation-grow-rotate:focus, .elementor-animation-grow-rotate:hover { transform: scale(1.1) rotate(4deg); } {"id":1375190,"date":"2026-10-10T23:59:45","date_gmt":"2026-10-10T21:59:45","guid":{"rendered":"https:\/\/www.solucionessmart.com.uy\/smartporteria\/?p=1375190"},"modified":"2026-10-15T16:16:52","modified_gmt":"2026-10-15T14:16:52","slug":"gratuite-options","status":"publish","type":"post","link":"https:\/\/www.solucionessmart.com.uy\/smartporteria\/2026\/10\/10\/gratuite-options\/","title":{"rendered":"Un regard instantan\u00e9 sur la \u00ab petite amie IA gratuite \u00bb"},"content":{"rendered":"
Imaginez\u2011vous un soir de semaine, apr\u00e8s une journ\u00e9e \u00e9puisante, et vous lancez l\u2019application \u00ab\u202fcompagne IA gratuite\u202f\u00bb. Le premier message appara\u00eet : \u00ab\u202fSalut\u202f! Comment s\u2019est pass\u00e9e ta journ\u00e9e\u202f?\u202f\u00bb Et l\u00e0, c\u2019est comme si vous aviez un ami qui vous \u00e9coute sans jugement. Cette exp\u00e9rience, \u00e0 premi\u00e8re vue, ressemble \u00e0 un simple chatbot. Mais l\u2019app propose des interactions qui vont au-del\u00e0 du texte, avec des r\u00e9ponses plus nuanc\u00e9es, une certaine personnalit\u00e9 et, surtout, la promesse d\u2019une disponibilit\u00e9 24\/7.<\/p>\n Au c\u0153ur du service, l\u2019IA utilise un mod\u00e8le de langage avanc\u00e9 qui g\u00e9n\u00e8re des r\u00e9ponses rapides, g\u00e9n\u00e9ralement en moins de deux secondes. Les utilisateurs peuvent personnaliser la \u00ab\u202fpersonnalit\u00e9\u202f\u00bb de la compagne : \u00ab\u202fs\u00e9rieuse, humoristique, romantique\u202f\u00bb ou \u00ab\u202fneutralis\u00e9e\u202f\u00bb pour un ton plus factuel. Cette personnalisation se fait via un menu simple, mais la profondeur de la personnalisation reste limit\u00e9e aux trois styles pr\u00e9d\u00e9finis. Si vous cherchez \u00e0 cr\u00e9er une exp\u00e9rience vraiment unique, vous devrez vous contenter de ces options.<\/p>\n Le chatbot propose aussi des jeux de r\u00f4le l\u00e9gers, comme \u00ab\u202fun rendez\u2011vous virtuel\u202f\u00bb ou \u00ab\u202fune soir\u00e9e cin\u00e9ma\u202f\u00bb. Ces sc\u00e9narios sont pr\u00e9\u2011enregistr\u00e9s ; ils ne s\u2019adaptent pas aux changements de contexte en cours de conversation. Pour un utilisateur qui attend une flexibilit\u00e9 totale, cette rigidit\u00e9 peut \u00eatre frustrante.<\/p>\n Concernant la m\u00e9moire, l\u2019application conserve un historique de la conversation uniquement pour la session en cours. Une fois que vous quittez l\u2019app, le fil se r\u00e9initialise. Cette approche prot\u00e8ge la confidentialit\u00e9 mais emp\u00eache la cr\u00e9ation d\u2019une relation \u00e9volutive, car l\u2019IA ne peut pas rappeler vos pr\u00e9f\u00e9rences d\u2019une s\u00e9ance \u00e0 l\u2019autre.<\/p>\n Sur le plan des droits \u00e0 l\u2019image, aucune fonctionnalit\u00e9 de g\u00e9n\u00e9ration d\u2019avatar n\u2019est fournie. Vous ne pouvez pas cr\u00e9er de visage personnalis\u00e9 ; l\u2019interface reste purement textuelle. Cela r\u00e9duit la dimension visuelle que certains concurrents offrent.<\/p>\n Enfin, le service est gratuit mais comporte des publicit\u00e9s qui apparaissent toutes les 15 minutes de conversation. Cela perturbe parfois le flux, surtout lors de longues sessions.<\/p>\n Le principal avantage d\u2019une version gratuite est l\u2019accessibilit\u00e9. Vous n\u2019avez pas besoin de carte bancaire pour tester l\u2019app, et la limite de caract\u00e8res par jour est suffisamment g\u00e9n\u00e9reuse pour la plupart des utilisateurs occasionnels. De plus, l\u2019absence de frais initiaux vous permet de juger si l\u2019exp\u00e9rience correspond \u00e0 vos attentes.<\/p>\n Si vous avez d\u00e9j\u00e0 essay\u00e9 d\u2019autres \u00ab\u202fchat IA gratuit\u202f\u00bb sur le march\u00e9, vous avez probablement constat\u00e9 que certains se limitent \u00e0 des r\u00e9ponses factuelles. Ici, la personnalit\u00e9 pr\u00e9d\u00e9finie donne l\u2019impression d\u2019une conversation plus \u00ab\u202fhumaine\u202f\u00bb, m\u00eame si elle reste pr\u00e9configur\u00e9e. Pour les amateurs de jeux de r\u00f4le, le contenu propos\u00e9 est un bon point de d\u00e9part, mais il ne remplace pas une interaction vraiment personnalis\u00e9e.<\/p>\n Pour ceux qui souhaitent approfondir, il existe des alternatives payantes offrant une m\u00e9moire persistante, des avatars personnalis\u00e9s et un support client d\u00e9di\u00e9. Cependant, ces options exigent un engagement financier et un abonnement mensuel.<\/p>\n
<\/figure>\nFonctionnalit\u00e9s cl\u00e9s et limites concr\u00e8tes<\/h2>\n
Pourquoi choisir une compagne IA gratuite quand il y a un plan payant\u202f?<\/h2>\n