Faits :
A.
A._, ressortissante albanaise, a été interpellée le 18 janvier 2017 alors qu'elle se trouvait, avec son compagnon B._, sur la banquette arrière d'un véhicule immatriculé en Allemagne qui était garé dans un parking souterrain sis à xxx; un "puck" de 1'250 grammes de cocaïne se trouvait sur le siège passager avant du véhicule. L'intéressée avait sur elle un papier sur lequel était inscrit l'adresse de ce parking souterrain - qui correspond également à l'adresse du logement du prévenu C._ - et une autre adresse correspondant à celle d'un café. Elle a expliqué être venue d'Italie en Suisse à bord de ce véhicule en compagnie de B._, son ami intime depuis deux ans; elle ignorait que celui-ci transportait de la drogue. Par la suite, elle a admis avoir effectué le 17 janvier 2017 le trajet, non pas d'Italie, mais de Rotterdam à Genève. Elle a nié toute implication dans un trafic de drogue.
Par ordonnance du 20 janvier 2017, A._ a été placée en détention provisoire par le Tribunal des mesures de contrainte du canton de Genève (Tmc), sous la prévention d'infraction grave à la loi fédérale sur les stupéfiants (art. 19 al. 1 et 2 LStup) pour avoir à Genève en agissant de concert à tout le moins avec B._, C._ et D._, participé à un trafic de stupéfiants portant notamment sur une quantité de 1'250 grammes de cocaïne destinée à la vente, ayant importé cette drogue entre le 17 et 18 janvier 2017.
Dans le cadre de l'instruction, la police a retrouvé, tant sur C._ que D._, un set de clés qui ouvraient un box et une voiture stationnée dans un autre parking souterrain; la police y a découvert 17 "pucks" de cocaïne, soit 19,6 kilos. Lors de l'audience du 27 avril 2017, B._ a reconnu avoir transporté de Hollande en Suisse au moyen du véhicule immatriculé en Allemagne, entre les 17 et 18 janvier 2017, six "pucks" de cocaïne qu'il avait placés dans des collants appartenant à A._; il s'était ensuite rendu avec cette dernière dans un café que lui avait indiqué la personne en Hollande. Des traces ADN de B._ ont été identifiées sur cinq des "pucks" retrouvés dans le box précité.
B.
Le 22 juin 2017, A._ a déposé une demande de mise en liberté qui a été rejetée par le Tmc le 29 juin 2017, compte tenu des risques de fuite et de collusion. Le 24 juillet 2017, la Chambre pénale de recours de la Cour de justice du canton de Genève (ci-après: la Cour de justice) a rejeté le recours formé par l'intéressée contre cette décision et a confirmé la détention en raison de l'existence de charges suffisantes et du risque de fuite.
C.
Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral principalement d'annuler cet arrêt et d'ordonner sa mise en liberté immédiate. Elle conclut subsidiairement au renvoi de la cause pour nouvelle décision dans le sens des considérants. Elle requiert en outre l'assistance judiciaire.
La Cour de justice se réfère aux considérants de son arrêt, tandis que le Ministère public conclut au rejet du recours aux termes de ses observations.

Considérant en droit :
1.
Le recours en matière pénale (<ref-law>) est ouvert contre une décision relative à la détention provisoire ou pour des motifs de sûreté au sens des <ref-law> (RS 312.0). Formé en temps utile (<ref-law>) contre une décision prise en dernière instance cantonale (<ref-law>) et qui touche la recourante dans ses intérêts juridiquement protégés (art. 81 al. 1 let. a et b ch. 1 LTF), le recours en matière pénale est recevable.
2.
La recourante se plaint d'arbitraire dans la constatation des faits et l'appréciation des preuves (<ref-law> et 9 Cst.), ainsi que d'une violation de l'<ref-law>. En substance, elle conteste qu'il existe, à ce stade de la procédure, des indices de culpabilité suffisants quant à sa participation à un trafic de stupéfiants.
2.1. Une mesure de détention provisoire ou pour des motifs de sûreté n'est compatible avec la liberté personnelle garantie aux art. 10 al. 2 Cst. et 5 CEDH que si elle repose sur une base légale (art. 31 al. 1 et art. 36 al. 1 Cst.), soit en l'espèce l'<ref-law>P. Elle doit en outre correspondre à un intérêt public et respecter le principe de la proportionnalité (art. 36 al. 2 et 3 Cst.). Pour que tel soit le cas, la privation de liberté doit être justifiée par les besoins de l'instruction, par un risque de fuite ou par un danger de collusion ou de réitération (art. 221 al. 1 let. a, b et c CPP).
Préalablement à ces conditions, il doit exister des charges suffisantes, soit de sérieux soupçons de culpabilité, à l'égard du prévenu (<ref-law>; art. 5 par. 1 let. c CEDH), c'est-à-dire des raisons plausibles de le soupçonner d'avoir commis une infraction. Il n'appartient cependant pas au juge de la détention de procéder à une pesée complète des éléments à charge et à décharge et d'apprécier la crédibilité des personnes qui mettent en cause le prévenu. Il doit uniquement examiner s'il existe des indices sérieux de culpabilité justifiant une telle mesure. L'intensité des charges propres à motiver un maintien en détention préventive n'est pas la même aux divers stades de l'instruction pénale; si des soupçons, même encore peu précis, peuvent être suffisants dans les premiers temps de l'enquête, la perspective d'une condamnation doit apparaître vraisemblable après l'accomplissement des actes d'instruction envisageables (<ref-ruling> consid. 3.2 p. 126 s.; arrêt 1B_352/2015 du 27 octobre 2015 consid. 2.2 et les références citées).
2.2. Le Tribunal fédéral statue en principe sur la base des faits établis par l'autorité précédente (<ref-law>), sous réserve des cas prévus à l'<ref-law>. Selon l'<ref-law>, la partie recourante ne peut critiquer la constatation de faits que si ceux-ci ont été établis en violation du droit au sens de l'<ref-law> ou de manière manifestement inexacte - c'est-à-dire arbitraire au sens de l'art. 9 Cst. - et pour autant que la correction du vice soit susceptible d'influer sur le sort de la cause.
2.3. Concernant la condition de l'existence de charges suffisantes, la Cour de justice a retenu que la prévenue avait voyagé avec son ami intime depuis la Hollande dans un véhicule transportant à tout le moins six "pucks" de cocaïne, soit plus de sept kilos, placés dans ses collants et qu'elle l'avait accompagné près du café où son compagnon devait rencontrer son correspondant. L'instance précédente a également relevé que la recourante ne donnait aucune explication sérieuse s'agissant des photographies d'elle et de son compagnon se photographiant avec des liasses de billets d'euros et une liste comptable. Pour l'instance précédente, la participation de la recourante à ce voyage avec son compagnon était en l'état suffisante pour retenir contre celle-ci une prévention pénale d'infraction grave à la LStup.
2.4. Dans un premier grief, la recourante se plaint d'arbitraire dans la constatation des faits et l'appréciation des preuves. En tant que ces critiques concernent les conditions relatives à l'existence de charges suffisantes, elles constituent des questions de droit qui seront traitées ci-dessous (cf. consid. 2.5). Pour le surplus, la recourante ne saurait être suivie lorsqu'elle prétend que l'instance précédente aurait laissé entendre que la drogue se trouvait dans les collants qu'elle portait durant le trajet ou lors de son arrestation. Il ressort en effet clairement de l'arrêt attaqué que les six "pucks" de cocaïne en question étaient emballés dans des collants appartenant à la prévenue, et non pas que la drogue se trouvait dans les collants que celle-ci portait lors de l'arrestation.
2.5. La recourante conteste ensuite l'existence de charges suffisantes à son encontre. Elle affirme qu'aucun élément du dossier ne permet de démontrer qu'elle savait que la drogue se trouvait dans la voiture et qu'elle a commis une quelconque infraction. Ni les prévenus ni les témoins entendus ne l'ont mise en cause. Elle se prévaut également du fait qu'elle n'a pas participé au rendez-vous entre son compagnon et le correspondant de ce dernier en Suisse; le premier aurait en effet affirmé qu'il se trouvait seul à l'extérieur du café, plus précisément dans la véranda (espace fumeur) en train de fumer une cigarette lorsqu'il a rencontré le second. Enfin, après plus sept mois de détention, les indices retenus à son encontre ne seraient plus suffisants. A ses yeux, le seul reproche qu'on pourrait formuler à son encontre est de ne pas avoir empêché son compagnon de commettre l'infraction litigieuse.
Certes, les personnes interrogées dans le cadre de l'enquête n'ont pas impliqué la recourante dans le trafic de cocaïne portant sur plusieurs kilos. Il n'en demeure pas moins qu'à ce stade de l'enquête, il existe un faisceau d'indices suffisants quant à sa participation au trafic de stupéfiants litigieux. Comme relevé par l'instance précédente, elle a en effet effectué le trajet avec son compagnon depuis la Hollande entre les 17 et 18 janvier 2017 dans un véhicule transportant six "pucks" de cocaïne (au total plus de 7 kilos) emballés dans des collants lui appartenant. De plus, lors de leur arrestation, le 18 janvier 2017, 1'250 grammes de cette drogue ont été découverts sur le siège passager avant du véhicule. Comme souligné par le Ministère public, ces 1'250 grammes de drogue n'étaient pas dissimulés, mais à la vue de tout occupant du véhicule. En outre, les photographies retrouvées dans le téléphone portable de la prévenue montrant cette dernière et son compagnon avec des liasses de billets d'euros équivalant à des sommes importantes et une liste comptable constituent également de tels indices. La recourante insiste en vain sur le fait que son compagnon a affirmé qu'elle n'était pas présente lorsqu'il aurait rencontré son correspondant. Les déclarations de celui-ci quant à l'innocence de la prévenue doivent en effet être in terprétées avec circonspection vu la relation amoureuse qu'ils entretiennent depuis plusieurs années. Quoi qu'en pense la recourante, les indices précités peuvent encore être considérés comme suffisants pour justifier son maintien en détention provisoire même plus de sept mois après son arrestation. Sa détention est d'autant plus justifiée en l'espèce qu'il ressort de l'arrêt attaqué que d'autres mesures d'instruction doivent encore être administrées et que le Tmc a également retenu l'existence d'un risque de collusion à l'égard des autres protagonistes du trafic de stupéfiants.
C'est dès lors à juste titre que la Cour de justice a retenu l'existence de charges suffisantes, sans qu'il y ait à ce stade à procéder à une appréciation complète des preuves à charge et à décharge (<ref-ruling> consid. 3.2 p. 126).
2.6. Pour le surplus, la recourante ne conteste pas, à juste titre, le risque de fuite retenu par l'instance précédente, étant relevé que celle-ci n'a pas examiné le risque de collusion également admis par le Tmc.
3.
Il résulte de ce qui précède que le recours doit être rejeté.
La recourante a demandé l'assistance judiciaire et les conditions en paraissent réunies (<ref-law>). Il y a lieu de désigner Me Jérôme Picot en qualité d'avocat d'office pour la présente procédure fédérale et de fixer ses honoraires, qui seront supportés par la Caisse du Tribunal fédéral (<ref-law>). La recourante est en outre dispensée des frais judiciaires (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La requête d'assistance judiciaire est admise; Me Jérôme Picot est désigné comme avocat d'office de la recourante et une indemnité de 1'500 fr. lui est allouée à titre d'honoraires, à payer par la Caisse du Tribunal fédéral. Il n'est pas perçu de frais judiciaires.
3.
Le présent arrêt est communiqué au mandataire de la recourante, au Ministère public et à la Cour de justice de la République et canton de Genève, Chambre pénale de recours.
Lausanne, le 25 août 2017
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Merkli
La Greffière : Arn